Sample code for 30+ languages & platforms
Unicode C

Transition from Imap.FetchBundleAsMime to Imap.FetchSingleBd

Provides instructions for replacing deprecated FetchBundleAsMime method calls with FetchSingleBd.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkImapW.h>
#include <C_CkMessageSetW.h>
#include <C_CkStringArrayW.h>
#include <C_CkBinDataW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkImapW imap;
    HCkMessageSetW mset;
    HCkStringArrayW saObj;
    HCkBinDataW bdMime;
    BOOL bUid;
    int numEmails;
    int i;

    success = FALSE;

    imap = CkImapW_Create();

    //  ...
    //  ...

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

    //  ------------------------------------------------------------------------
    //  The FetchBundleAsMime method is deprecated:

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

    //  ...
    //  ...

    CkStringArrayW_Dispose(saObj);

    //  ------------------------------------------------------------------------
    //  Do the equivalent using FetchSingleBd.

    CkImapW_putAutoDownloadAttachments(imap,TRUE);

    bdMime = CkBinDataW_Create();
    bUid = CkMessageSetW_getHasUids(mset);
    numEmails = CkMessageSetW_getCount(mset);
    i = 0;
    while (i < numEmails) {
        success = CkImapW_FetchSingleBd(imap,CkMessageSetW_GetId(mset,i),bUid,bdMime);
        //  ...
        //  ...

        i = i + 1;
    }



    CkImapW_Dispose(imap);
    CkMessageSetW_Dispose(mset);
    CkBinDataW_Dispose(bdMime);

    }