Sample code for 30+ languages & platforms
Unicode C

Upload .eml File to an IMAP Mailbox

See more IMAP Examples

Demonstrates how to upload the MIME source of an email to a mailbox on an IMAP server.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkImapW.h>
#include <C_CkStringBuilderW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkImapW imap;
    HCkStringBuilderW sbMime;

    success = FALSE;

    imap = CkImapW_Create();

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

    // Connect to an IMAP server.
    // Use TLS
    CkImapW_putSsl(imap,TRUE);
    CkImapW_putPort(imap,993);
    success = CkImapW_Connect(imap,L"MY-IMAP-DOMAIN");
    if (success != TRUE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        return;
    }

    // Login
    success = CkImapW_Login(imap,L"MY-IMAP-LOGIN",L"MY-IMAP-PASSWORD");
    if (success != TRUE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        return;
    }

    sbMime = CkStringBuilderW_Create();
    CkStringBuilderW_LoadFile(sbMime,L"qa_data/eml/emoji_pizza.eml",L"utf-8");

    // Upload to the mailbox.
    success = CkImapW_AppendMime(imap,L"[Gmail]/testFolder",CkStringBuilderW_getAsString(sbMime));
    if (success != TRUE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        CkStringBuilderW_Dispose(sbMime);
        return;
    }

    CkImapW_Disconnect(imap);

    wprintf(L"OK.\n");


    CkImapW_Dispose(imap);
    CkStringBuilderW_Dispose(sbMime);

    }