Sample code for 30+ languages & platforms
Unicode C

Transition from Imap.FetchChunk to Imap.FetchRange

Provides instructions for replacing deprecated FetchChunk method calls with FetchRange.

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;
    int startSeqNum;
    int count;
    HCkMessageSetW failedSet;
    HCkMessageSetW fetchedSet;
    HCkEmailBundleW bundleObj;
    BOOL headersOnly;
    HCkEmailBundleW bundleOut;

    success = FALSE;

    imap = CkImapW_Create();

    //  ...
    //  ...

    startSeqNum = 1;
    count = 5;

    failedSet = CkMessageSetW_Create();
    fetchedSet = CkMessageSetW_Create();

    //  ------------------------------------------------------------------------
    //  The FetchChunk method is deprecated:

    bundleObj = CkImapW_FetchChunk(imap,startSeqNum,count,failedSet,fetchedSet);
    if (CkImapW_getLastMethodSuccess(imap) == FALSE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        CkMessageSetW_Dispose(failedSet);
        CkMessageSetW_Dispose(fetchedSet);
        return;
    }

    //  ...
    //  ...

    CkEmailBundleW_Dispose(bundleObj);

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

    headersOnly = FALSE;

    bundleOut = CkEmailBundleW_Create();
    success = CkImapW_FetchRange(imap,headersOnly,startSeqNum,count,bundleOut);
    if (success == FALSE) {
        wprintf(L"%s\n",CkImapW_lastErrorText(imap));
        CkImapW_Dispose(imap);
        CkMessageSetW_Dispose(failedSet);
        CkMessageSetW_Dispose(fetchedSet);
        CkEmailBundleW_Dispose(bundleOut);
        return;
    }



    CkImapW_Dispose(imap);
    CkMessageSetW_Dispose(failedSet);
    CkMessageSetW_Dispose(fetchedSet);
    CkEmailBundleW_Dispose(bundleOut);

    }