Спасибо конечно за пример на VBA но мне бы разобраться как это сделать на аксапте.
Пробую вот так. Говорит что нет метода objCDOMsg.sender()
X++:
static void maks_getMail_FromOutlook_(Args _args)
{
#SysOutlookCOMDEF
SysOutlookApplication outlook = new SysOutlookApplication();
SysOutlookRecipients recipients;
SysOutlookRecipient recipientsItem;
SysOutlookFormDescription formDescription;
SysOutlook_Items collection;
SysOutlook_NameSpace nameSpace;
SysOutlookMapiFolder inboxFolder;
SysOutlookMailItem mailItem;
COM nextItem;
COM objSession;
COM objCDOMsg;
COM sender;
;
namespace = outlook.getNameSpace('MAPI');
objSession = outlook.CreateObject("MAPI.Session");
objSession.logon("", "", false, false);
inboxFolder = namespace.getDefaultFolder(#OlDefaultFolders_olFolderInbox);
collection = inboxFolder.items();
nextItem = collection.GetFirst();
while (nextItem)
{
mailItem = new SysOutlookMailItem(nextItem);
recipients = mailItem.Recipients();
recipientsItem = recipients.Item(COMVariant::createFromInt(1));
objCDOMsg = objSession.GetMessage(mailItem.EntryID());//, mailItem.Parent().StoreID());
sender = objCDOMsg.sender();
info(sender.address());
info("??: " + mailItem.SenderName());
info("????: " + recipientsItem.Address());
info("????: " + mailItem.Subject());
// info(mailItem.HTMLBody());
info("====================");
nextItem = collection.GetNext();
}
}