Sample code for 30+ languages & platforms
Unicode C

Transition from Imap.FetchHeaders to Imap.FetchMsgSet

Provides instructions for replacing deprecated FetchHeaders method calls with FetchMsgSet.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkImapW.h>
#include <C_CkMessageSetW.h>
#include <C_CkEmailBundleW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkImapW imap;
    HCkMessageSetW mset;
    HCkEmailBundleW bundleObj;
    BOOL headersOnly;
    HCkEmailBundleW bundleOut;

    success = FALSE;

    imap = CkImapW_Create();

    //  ...
    //  ...

    mset = CkMessageSetW_Create();
    success = CkImapW_QueryMbx(imap,L"FROM joe@example.com",TRUE,mset);
    //  ...
    //  ...

    //  ------------------------------------------------------------------------
    //  The FetchHeaders method is deprecated:

    bundleObj = CkImapW_FetchHeaders(imap,mset);
    if (CkImapW_getLastMethodSuccess(imap) == FALSE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        CkMessageSetW_Dispose(mset);
        return;
    }

    //  ...
    //  ...

    CkEmailBundleW_Dispose(bundleObj);

    //  ------------------------------------------------------------------------
    //  Do the equivalent using FetchMsgSet.
    //  Your application creates a new, empty EmailBundle object which is passed 
    //  in the last argument and filled upon success.

    headersOnly = TRUE;

    bundleOut = CkEmailBundleW_Create();
    success = CkImapW_FetchMsgSet(imap,headersOnly,mset,bundleOut);
    if (success == FALSE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        CkMessageSetW_Dispose(mset);
        CkEmailBundleW_Dispose(bundleOut);
        return;
    }



    CkImapW_Dispose(imap);
    CkMessageSetW_Dispose(mset);
    CkEmailBundleW_Dispose(bundleOut);

    }