Sample code for 30+ languages & platforms
Visual FoxPro

Find the "Sent" IMAP Mailbox

See more IMAP Examples

Find the "Sent" IMAP mailbox. Also finds the Junk and Trash mailboxes..

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loImap
LOCAL lcRefName
LOCAL lcWildcardedMailbox
LOCAL lnSubscribed
LOCAL loMboxes
LOCAL i

lnSuccess = 0

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

loImap = CreateObject('Chilkat.Imap')

loImap.Ssl = 1
loImap.Port = 993
lnSuccess = loImap.Connect("imap.yourmailserver.com")
IF (lnSuccess = 0) THEN
    ? loImap.LastErrorText
    RELEASE loImap
    CANCEL
ENDIF

* Login or authenticate in some way..
lnSuccess = loImap.Login("your_login","your_password")
IF (lnSuccess = 0) THEN
    ? loImap.LastErrorText
    RELEASE loImap
    CANCEL
ENDIF

* Get the list of mailboxes.
lcRefName = ""
lcWildcardedMailbox = "*"
lnSubscribed = 0

loMboxes = CreateObject('Chilkat.Mailboxes')
lnSuccess = loImap.MbxList(lnSubscribed,lcRefName,lcWildcardedMailbox,loMboxes)
IF (lnSuccess = 0) THEN
    ? loImap.LastErrorText
    RELEASE loImap
    RELEASE loMboxes
    CANCEL
ENDIF

* The mailbox with the "/Sent" flag is the "Sent" mailbox.
* Likewise for Junk and Trash..
i = 0
DO WHILE i < loMboxes.Count
    IF (loMboxes.HasFlag(i,"\Sent") = 1) THEN
        ? "Sent mailbox: " + loMboxes.GetName(i)
    ENDIF

    IF (loMboxes.HasFlag(i,"\Junk") = 1) THEN
        ? "Junk mailbox: " + loMboxes.GetName(i)
    ENDIF

    IF (loMboxes.HasFlag(i,"\Trash") = 1) THEN
        ? "Trash mailbox: " + loMboxes.GetName(i)
    ENDIF

    i = i + 1
ENDDO

* Disconnect from the IMAP server.
lnSuccess = loImap.Disconnect()

RELEASE loImap
RELEASE loMboxes