Following is C# code which I wrote to extract email address.
RDOSession objNsp = new RDOSession();
objNsp.Logon(null, null, false, true, false, false);
RDOMail Item = objNsp.GetMessageFromMsgFile(MSGFilePath, false);
int PR_SENDER_ADDRTYPE = (0xC1E001E);
int PR_EMAIL = (0x39FE001E);
Redemption.SafeMailItem objSMail = null;
Redemption.AddressEntry objSenderAE = null;
System.Type objDocType = System.Type.GetTypeFromProgID("Redemption.MAPIUtils");
object objDoc = System.Activator.CreateInstance(objDocType);
Redemption.MAPIUtils Utils = (Redemption.MAPIUtils)objDoc;
Utils.MAPIOBJECT = Item.Session.MAPIOBJECT;
System.Type objSafeMailType = System.Type.GetTypeFromProgID("Redemption.SafeMailItem");
object safeMailType = System.Activator.CreateInstance(objSafeMailType);
objSMail = (Redemption.SafeMailItem)safeMailType;
objSMail.Item = Item;
objSenderAE = objSMail.Sender;
if (objSenderAE != null)
{
object strType = objSMail.get_Fields(PR_SENDER_ADDRTYPE);
string emailType = (string)strType;
if (emailType == "SMTP")
{
senderAddress = objSenderAE.SMTPAddress;
}
else if (emailType == "EX")
{
object a = objSenderAE.get_Fields(PR_EMAIL);
}
else
{
senderAddress = objSenderAE.Address;
}
}
objSMail = null;
objSenderAE = null;
The problem is that I get the senderAddress as ‘null’ when the emailType is “EX”. Your help is approceiated.