Using the Outlook.Application object to read e-mails from Visual Foxpro.
Trying to read e-mail using POP3 or IMAP proved to be hell to me. Documentation is not present or hardly legible. Because we use Microsoft® Outlook® at our company, I was able to connect to Outlook using the Outlook.Application object.
This simple code finds all mails in a certain folder (loTelecomMap):
loOutlook = CREATEOBJECT("Outlook.application") loMAPI = loOutlook.GetNameSpace("MAPI") loTelecomMap = loMAPI.GetDefaultFolder(6).Folders([Business]).folders([Telecom]) loMails = loTelecomMap.Items loMessage = loMails.Find("[Subject]='Mail subject title'") && starts with the last (newest) message DO WHILE NOT ISNULL(loMessage) ldDate = TTOD(loMessage.ReceivedTime) lcMessage = loMessage.Body lcHTMLsource = loMessage.HTMLbody * More actions on the loMessage object loMessage = loMails.FindNext() && Next message ENDDO RELEASE loOutlook
I had great help using a whitepaper by Andrew MacNeill. Linking to his page is prohibited, so you have to copy-and-paste the URL yourself: http://www.aksel.com/whitepapers/OutlookAutomation.htm. To accommodate for possible closing of that reference, I have included the pages contents (the whitepaper) in PDF form on this page.