PureBasic
PureBasic
Read a POP3 Mailbox
Read a POP3 mailbox and display the FROM and SUBJECT header fields of each email.Chilkat PureBasic Downloads
IncludeFile "CkEmailBundle.pb"
IncludeFile "CkEmail.pb"
IncludeFile "CkMailMan.pb"
Procedure ChilkatExample()
success.i = 0
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
; The mailman object is used for receiving (POP3)
; and sending (SMTP) email.
mailman.i = CkMailMan::ckCreate()
If mailman.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; Set the POP3 server's hostname
CkMailMan::setCkMailHost(mailman, "pop.example.com")
; Set the POP3 login/password.
CkMailMan::setCkPopUsername(mailman, "myLogin")
CkMailMan::setCkPopPassword(mailman, "myPassword")
; Copy the all email from the user's POP3 mailbox
; into a bundle object. The email remains on the server.
bundle.i = CkEmailBundle::ckCreate()
If bundle.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
keepOnServer.i = 1
headersOnly.i = 0
; Irrelevent because we are NOT downloading headers-only
numBodyLines.i = 0
success = CkMailMan::ckFetchAll(mailman,keepOnServer,headersOnly,numBodyLines,bundle)
If success = 0
Debug CkMailMan::ckLastErrorText(mailman)
CkMailMan::ckDispose(mailman)
CkEmailBundle::ckDispose(bundle)
ProcedureReturn
EndIf
i.i = 0
email.i = CkEmail::ckCreate()
If email.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
While i < CkEmailBundle::ckMessageCount(bundle)
CkEmailBundle::ckEmailAt(bundle,i,email)
Debug "From: " + CkEmail::ckFrom(email)
Debug "Subject: " + CkEmail::ckSubject(email)
i = i + 1
Wend
success = CkMailMan::ckPop3EndSession(mailman)
CkMailMan::ckDispose(mailman)
CkEmailBundle::ckDispose(bundle)
CkEmail::ckDispose(email)
ProcedureReturn
EndProcedure