Sample code for 30+ languages & platforms
C

Create an IMAP Mailbox

See more IMAP Examples

Demonstrates the Chilkat Imap.CreateMailbox method, which creates a mailbox on the IMAP server. When creating nested mailboxes, use the server's hierarchy delimiter reported in the SeparatorChar property. This example creates a mailbox named Archive2026.

Background: IMAP folders form a hierarchy, and the character that separates levels varies by server — commonly / or .. To create a sub-folder you build the path with that delimiter (for example Archive/2026), which is why you should read SeparatorChar rather than assume one. Creating mailboxes lets an application organize mail into folders programmatically, such as filing messages by year or project.

Chilkat C Downloads

C
#include <C_CkImap.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkImap imap;

    success = FALSE;

    //  Demonstrates the Imap.CreateMailbox method, which creates a mailbox on the IMAP server.
    //  Use the server's hierarchy delimiter (the SeparatorChar property) when creating nested
    //  mailboxes.

    imap = CkImap_Create();

    CkImap_putSsl(imap,TRUE);
    CkImap_putPort(imap,993);

    success = CkImap_Connect(imap,"imap.example.com");
    if (success == FALSE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        CkImap_Dispose(imap);
        return;
    }

    success = CkImap_Login(imap,"user@example.com","myPassword");
    if (success == FALSE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        CkImap_Dispose(imap);
        return;
    }

    //  Create a new mailbox (folder) on the server.
    success = CkImap_CreateMailbox(imap,"Archive2026");
    if (success == FALSE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        CkImap_Dispose(imap);
        return;
    }

    printf("Mailbox created.\n");

    success = CkImap_Disconnect(imap);
    if (success == FALSE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        CkImap_Dispose(imap);
        return;
    }



    CkImap_Dispose(imap);

    }