Example #1
0
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////
        //
        // This function displays your first contact in your Contacts folder
        //
        // To do this:
        //		-first open up a MAPI session and login
        //		-then open the message store you want to send 
        //		-open your contacts folder 
        //
        // Use GetName to get the name (default DISPLAY NAME, but can be Initials, First Name etc) 
        // Use GetEmail to get the email address (named property) 
        // Use GetAddress to get the mailing address of CContactAddress::AddressType
        // Use GetPhoneNumber supplying a phone number property (ie BUSINESS_TELEPHONE_NUMBER)
        // Use GetNotes to get the notes in either plain text (default) or RTF
        //
        // Remember to Dispose of the contact when you're done with it!
        //
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public static void ContactsTest(NetMAPI mapi)
        {
            if (mapi.OpenContacts() && mapi.GetContents())
            {
                // sort by name (stored in PR_SUBJECT)
                mapi.SortContents(true, SortFields.SORT_SUBJECT);

                MAPIContact contact;
                StringBuilder strText = new StringBuilder(NetMAPI.DefaultBufferSize);
                if (mapi.GetNextContact(out contact))
                {
                    if (contact.GetName(strText, MAPIContact.NameType.DISPLAY_NAME)) Console.WriteLine("Contact: " + strText);
                    if (contact.GetEmail(strText)) Console.WriteLine("Email: " + strText);
                    if (contact.GetCategories(strText)) Console.WriteLine("Categories: " + strText);

                    MAPIContact.ContactAddress address;
                    if (contact.GetAddress(out address, MAPIContact.AddressType.BUSINESS))
                    {
                        Console.WriteLine(address.Street);
                        Console.WriteLine(address.City);
                        Console.WriteLine(address.StateOrProvince);
                        Console.WriteLine(address.Country);
                        Console.WriteLine(address.PostalCode);
                    }

                    if (contact.GetPhoneNumber(strText, MAPIContact.PhoneType.BUSINESS_TELEPHONE_NUMBER)) Console.WriteLine("Phone: " + strText);

                    //usually you would call GetNotesSize first to ensure the buffer is large enough
                    if (contact.GetNotes(strText, false)) Console.WriteLine("Notes: " + strText);

                    contact.Dispose();
                }
            }
        }