Visual FoxPro
Visual FoxPro
Process Large POP3 Mailbox
Demonstrates how to read email from a mailbox that may contain a large number of emails.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loMailman
LOCAL loStUidls
LOCAL loEmail
LOCAL lnCount
LOCAL i
LOCAL lcUidl
lnSuccess = 0
* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loMailman = CreateObject('Chilkat.MailMan')
loMailman.MailHost = "pop.example.com"
loMailman.PopUsername = "myLogin"
loMailman.PopPassword = "myPassword"
loMailman.MailPort = 995
loMailman.PopSsl = 1
* Get the list of UIDLs for all emails in the mailbox.
loStUidls = CreateObject('Chilkat.StringTable')
lnSuccess = loMailman.FetchUidls(loStUidls)
IF (lnSuccess = 0) THEN
? loMailman.LastErrorText
RELEASE loMailman
RELEASE loStUidls
CANCEL
ENDIF
* Download each email by UIDL.
loEmail = CreateObject('Chilkat.Email')
lnCount = loStUidls.Count
i = 0
DO WHILE i < lnCount
* Download the full email.
lcUidl = loStUidls.StringAt(i)
lnSuccess = loMailman.FetchByUidl(lcUidl,0,0,loEmail)
IF (lnSuccess = 0) THEN
? loMailman.LastErrorText
RELEASE loMailman
RELEASE loStUidls
RELEASE loEmail
CANCEL
ENDIF
? STR(i)
? "UIDL: " + lcUidl
? "From: " + loEmail.From
? "Subject: " + loEmail.Subject
i = i + 1
ENDDO
loMailman.Pop3EndSession()
RELEASE loMailman
RELEASE loStUidls
RELEASE loEmail