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

Delete All Email in a POP3 Mailbox

Delete all email in a POP3 mailbox.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oMailman
LOCAL oStUidls

nSuccess := 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.
oMailman := CreateObject("Chilkat.MailMan")

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

//  Set the POP3 login/password.
oMailman:PopUsername := "bob@example.com"
oMailman:PopPassword := "****"

//  Make sure the ImmediateDelete property is set (this is the default)
//  If ImmediateDelete is not set, messages marked for deletion
//  by the Delete* methods will not be deleted until the POP3
//  connection is closed by calling Pop3EndSession.
oMailman:ImmediateDelete := 1

//  First, get all the UIDLs.
oStUidls := CreateObject("Chilkat.StringTable")
nSuccess := oMailman:FetchUidls(oStUidls)
IF (nSuccess == 0)
    ? oMailman:LastErrorText
    oMailman:destroy()
    oStUidls:destroy()
    RETURN
ENDIF

//  Next, delete them all.
nSuccess := oMailman:DeleteUidlSet(oStUidls)
IF (nSuccess == 0)
    ? oMailman:LastErrorText
    oMailman:destroy()
    oStUidls:destroy()
    RETURN
ENDIF

//  We're done with the POP3 session, so it doesn't hurt to call this...
nSuccess := oMailman:Pop3EndSession()
IF (nSuccess == 0)
    ? oMailman:LastErrorText
    oMailman:destroy()
    oStUidls:destroy()
    RETURN
ENDIF

? "Success."

oMailman:destroy()
oStUidls:destroy()