Sample code for 30+ languages & platforms
AutoIt

List IMAP Mailboxes with Reference

Demonstrates how to list all sub-mailboxes within a specified context. In this case, we list all mailboxes under "INBOX.vendors".

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

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

$oImap = ObjCreate("Chilkat.Imap")

; Connect to an IMAP server.
; Use TLS
$oImap.Ssl = True
$oImap.Port = 993
$bSuccess = $oImap.Connect("imap.example.com")
If ($bSuccess = False) Then
    ConsoleWrite($oImap.LastErrorText & @CRLF)
    Exit
EndIf

; Login
$bSuccess = $oImap.Login("admin@chilkatsoft.com","myPassword")
If ($bSuccess = False) Then
    ConsoleWrite($oImap.LastErrorText & @CRLF)
    Exit
EndIf

; Get the list of mailboxes.
Local $sRefName = ""
Local $sWildcardedMailbox = "*"
Local $bSubscribed = False

$oMboxes = ObjCreate("Chilkat.Mailboxes")
$bSuccess = $oImap.MbxList($bSubscribed,$sRefName,$sWildcardedMailbox,$oMboxes)
If ($bSuccess = False) Then
    ConsoleWrite($oImap.LastErrorText & @CRLF)
    Exit
EndIf

Local $i = 0
While $i < $oMboxes.Count
    ConsoleWrite($oMboxes.GetName($i) & @CRLF)
    $i = $i + 1
Wend

; Sample output looks like this:
; INBOX.vendors.shareit
; INBOX.vendors.paypal
; INBOX.vendors.dell
; INBOX.vendors.inMotion
; INBOX.vendors.myhosting
; INBOX.vendors.peer1

; Disconnect from the IMAP server.
$bSuccess = $oImap.Disconnect()