Sample code for 30+ languages & platforms
PowerBuilder

Create Email Folder (sub-Mailbox)

How to create a new email folder (sub-mailbox). (In GMail, folders are called "labels". This example would create a new "label" in GMail.)

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Imap

li_Success = 0

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

loo_Imap = create oleobject
li_rc = loo_Imap.ConnectToNewObject("Chilkat.Imap")
if li_rc < 0 then
    destroy loo_Imap
    MessageBox("Error","Connecting to COM object failed")
    return
end if

loo_Imap.Ssl = 1
loo_Imap.Port = 993

// Connect to an IMAP server.
li_Success = loo_Imap.Connect("imap.gmail.com")
if li_Success <> 1 then
    Write-Debug loo_Imap.LastErrorText
    destroy loo_Imap
    return
end if

// Login
li_Success = loo_Imap.Login("myLogin","myPassword")
if li_Success <> 1 then
    Write-Debug loo_Imap.LastErrorText
    destroy loo_Imap
    return
end if

// Create the new email folder (sub-mailbox) on the IMAP server.
// If no folder path is provided, the new folder is a sub-mailbox of Inbox.
li_Success = loo_Imap.CreateMailbox("newFolder")
if li_Success <> 1 then
    Write-Debug loo_Imap.LastErrorText
    destroy loo_Imap
    return
end if

// (In GMail, folders are called "labels".  
// This example would create a new "label" in GMail.)

// Now create a sub-folder under "newFolder".
// Make sure to use the proper separator char for your IMAP server.
// The separator char used here is "/".   It is typically "/" or ".".
// The SeparatorChar property contains the separator char
// that should be used for the current IMAP session.
li_Success = loo_Imap.CreateMailbox("newFolder/subFolder_A")
if li_Success <> 1 then
    Write-Debug loo_Imap.LastErrorText
    destroy loo_Imap
    return
end if

Write-Debug "Success."


destroy loo_Imap