Sample code for 30+ languages & platforms
PowerShell

Find the "Sent" IMAP Mailbox

See more IMAP Examples

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

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

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

$imap = New-Object Chilkat.Imap

$imap.Ssl = $true
$imap.Port = 993
$success = $imap.Connect("imap.yourmailserver.com")
if ($success -eq $false) {
    $($imap.LastErrorText)
    exit
}

# Login or authenticate in some way..
$success = $imap.Login("your_login","your_password")
if ($success -eq $false) {
    $($imap.LastErrorText)
    exit
}

# Get the list of mailboxes.
$refName = ""
$wildcardedMailbox = "*"
$subscribed = $false

$mboxes = New-Object Chilkat.Mailboxes
$success = $imap.MbxList($subscribed,$refName,$wildcardedMailbox,$mboxes)
if ($success -eq $false) {
    $($imap.LastErrorText)
    exit
}

# The mailbox with the "/Sent" flag is the "Sent" mailbox.
# Likewise for Junk and Trash..
$i = 0
while ($i -lt $mboxes.Count) {
    if ($mboxes.HasFlag($i,"\\Sent") -eq $true) {
        $("Sent mailbox: " + $mboxes.GetName($i))
    }

    if ($mboxes.HasFlag($i,"\\Junk") -eq $true) {
        $("Junk mailbox: " + $mboxes.GetName($i))
    }

    if ($mboxes.HasFlag($i,"\\Trash") -eq $true) {
        $("Trash mailbox: " + $mboxes.GetName($i))
    }

    $i = $i + 1
}

# Disconnect from the IMAP server.
$success = $imap.Disconnect()