Sample code for 30+ languages & platforms
Xbase++ Requires Chilkat v11.0.0+

Read All Email from POP3 Inbox by Message Numbers

Demonstrates how to read all of the email from a POP3 inbox by fetching each email by it's message number.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oMailman
LOCAL nNumMessages
LOCAL i
LOCAL oEmail

nSuccess := 0

//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oMailman := CreateObject("Chilkat.MailMan")

//  Set the POP3 server's hostname
oMailman:MailHost := "pop.example.com"

//  Set the POP3 login/password.
oMailman:PopUsername := "myLogin"
oMailman:PopPassword := "myPassword"

//  Get the number of messages in the mailbox.
nNumMessages := oMailman:GetMailboxCount()

//  Message numbers are specific to a POP3 session. 
//  If a maildrop (i.e. inbox)  contains 10 messages, 
//  the message numbers will be 1, 2, 3, ... 10. 
//  If message number 1 is deleted and a new POP3 session 
//  is established, there will be 9 messages numbered 1, 2, 3, ... 9. 

i := 1

oEmail := CreateObject("Chilkat.Email")
DO WHILE i <= nNumMessages
    //  Fetch by the message number (not by the UIDL)
    nSuccess := oMailman:FetchOne(0, 0, i, oEmail)
    IF (nSuccess == 0)
        ? oMailman:LastErrorText
        oMailman:destroy()
        oEmail:destroy()
        RETURN
    ENDIF

    ? oEmail:From + ": " + oEmail:Subject + Chr(10)

    i := i + 1
ENDDO

oMailman:destroy()
oEmail:destroy()