Sample code for 30+ languages & platforms
C

Transition from Imap.FetchHeaders to Imap.FetchMsgSet

Provides instructions for replacing deprecated FetchHeaders method calls with FetchMsgSet.

Chilkat C Downloads

C
#include <C_CkImap.h>
#include <C_CkMessageSet.h>
#include <C_CkEmailBundle.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkImap imap;
    HCkMessageSet mset;
    HCkEmailBundle bundleObj;
    BOOL headersOnly;
    HCkEmailBundle bundleOut;

    success = FALSE;

    imap = CkImap_Create();

    //  ...
    //  ...

    mset = CkMessageSet_Create();
    success = CkImap_QueryMbx(imap,"FROM joe@example.com",TRUE,mset);
    //  ...
    //  ...

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

    bundleObj = CkImap_FetchHeaders(imap,mset);
    if (CkImap_getLastMethodSuccess(imap) == FALSE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        CkImap_Dispose(imap);
        CkMessageSet_Dispose(mset);
        return;
    }

    //  ...
    //  ...

    CkEmailBundle_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 = CkEmailBundle_Create();
    success = CkImap_FetchMsgSet(imap,headersOnly,mset,bundleOut);
    if (success == FALSE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        CkImap_Dispose(imap);
        CkMessageSet_Dispose(mset);
        CkEmailBundle_Dispose(bundleOut);
        return;
    }



    CkImap_Dispose(imap);
    CkMessageSet_Dispose(mset);
    CkEmailBundle_Dispose(bundleOut);

    }