A Microsoft Outlook email forum. Outlook Banter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » Outlook Banter forum » Microsoft Outlook Email Newsgroups » Outlook and VBA
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

Help with some issues in Outlook Plugin development



 
 
Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #6  
Old June 10th 09, 02:27 PM posted to microsoft.public.outlook.program_vba
Ken Slovak - [MVP - Outlook]
external usenet poster
 
Posts: 5,848
Default Help with some issues in Outlook Plugin development

Sue's on vacation.

I see a few flaws in your code.

First of all, in an Outlook COM addin, never create a new
Outlook.Application object. Always use the Application object passed to you
in your startup code handler or in OnConnection.

Second, that code will only look at contacts. If a recipient is from the GAL
then you never will find anything.

As Sue recommended it's really best to work with the Recipients collection
and iterate that. You said that didn't work but didn't provide any
information as to why. Each Recipient object has an Address property .
That's what you should be using.

When the Recipient is part of an Exchange domain you won't get back an SMTP
style address, you'll get back an Exchange DN type address such as your
example: /O=DOMAIN/OU=FIRST ADMINISTRATIVE GROUP/CN=RE/ou=abcd.

In those cases you would need to convert the EX address into an SMTP
equivalent. Since you never mention which version or versions of Outlook you
are targeting it's hard to be specific as to how you would convert the
address. Take a look at
http://www.outlookcode.com/threads.a...essageid=13469 for some
suggestions as to how to do that. Note that since you're using managed code
(C#) the CDO option is not available to you, CDO is not supported and should
not be used with managed code.

You can also search at www.outlookcode.com using something like "convert
exchange address to smtp" to look at other forum threads on that topic.

--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Professional Programming Outlook 2007.
Reminder Manager, Extended Reminders, Attachment Options.
http://www.slovaktech.com/products.htm


"anindasen_0609" wrote in message
...
Thanks for your reply. I am sorry I could not reply earlier.

1) I think I created a confusion. I actually meant all the email fields
ie., From, To, Cc and Bcc. Wherever there is a name for a particular email
address
in the local address book, I am getting the name instead of the email ID.

My function to get email ID against the name is as below:

private string GetEmailID(ref string recipientName)
{
string recipientEmailID = null;
string myQuery = null;
myQuery = "[FullName] = '" + recipientName + "'";

// Create the Outlook application.
Outlook.Application oApp = new Outlook.Application();
// Get the NameSpace information.
Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
// Get the default Contacts folder.
Outlook.MAPIFolder oContacts =
oNS.GetDefaultFolder(Outlook.OlDefaultFolders.olFo lderContacts);
// Get the Items collection from the folder.
Outlook.Items oItems = (Outlook.Items)oContacts.Items;
// Get the first contact item in the Items collection.
Outlook.ContactItem oCt =
(Outlook.ContactItem)oItems.Find(myQuery);

if (oCt != null)
{
if (oCt.Email1Address.IndexOf("@") != -1)
recipientEmailID = oCt.Email1Address;
else
recipientEmailID = recipientName;
}
else
{
recipientEmailID = recipientName;
}

oCt = null;
oItems = null;
oContacts = null;
oNS = null;
oApp = null;

return recipientEmailID;
}


and I am calling it only when


if (emailAddress.IndexOf("@") = 0)
{
emailAddress = GetEmailID(ref emailAddress);
}


2) I will definitely look at the resources that you have kindly shared and
try
NewMailEx.

3) There is one more problem which I am solving in a rather inelegant way.
I am getting the sender's Email ID from Outlook in a form like:

/O=DOMAIN/OU=FIRST ADMINISTRATIVE GROUP/CN=RE/ou=abcd

if the email ID is - .

We are using Active Directory Service and all that I am doing right now is
taking
out the email name and the domain by string manipulation and getting the
email ID from
the database against that. But I am looking for a more proper solution to
this problem.

Thanks.
Aninda


 




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
The Outlook Express Development Team/s D. Spencer Hines Outlook Express 23 May 18th 09 09:47 PM
The Outlook Express Development Team/s D. Spencer Hines Outlook Express 0 February 2nd 09 04:49 AM
VS Development environment - Outlook addin gattsi Add-ins for Outlook 1 January 25th 08 03:21 PM
Best Outlook Add-In development companies? Mark B Add-ins for Outlook 5 June 21st 07 12:06 PM
Outlook Web Access Development AaronTJ Outlook - General Queries 1 February 16th 06 02:25 AM


All times are GMT +1. The time now is 11:04 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.Search Engine Friendly URLs by vBSEO 2.4.0
Copyright 2004-2025 Outlook Banter.
The comments are property of their posters.