Sample code for 30+ languages & platforms
Delphi DLL Requires Chilkat v11.0.0+

Transition from Imap.FetchBundleAsMime to Imap.FetchSingleBd

Provides instructions for replacing deprecated FetchBundleAsMime method calls with FetchSingleBd.

Chilkat Delphi DLL Downloads

Delphi DLL
var
success: Boolean;
imap: HCkImap;
mset: HCkMessageSet;
saObj: HCkStringArray;
bdMime: HCkBinData;
bUid: Boolean;
numEmails: Integer;
i: Integer;

begin
success := False;

imap := CkImap_Create();

//  ...
//  ...

mset := CkMessageSet_Create();
success := CkImap_QueryMbx(imap,'FROM joe@example.com',True,mset);
//  ...
//  ...

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

saObj := CkImap_FetchBundleAsMime(imap,mset);
if (CkImap_getLastMethodSuccess(imap) = False) then
  begin
    Memo1.Lines.Add(CkImap__lastErrorText(imap));
    Exit;
  end;

//  ...
//  ...

CkStringArray_Dispose(saObj);

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

CkImap_putAutoDownloadAttachments(imap,True);

bdMime := CkBinData_Create();
bUid := CkMessageSet_getHasUids(mset);
numEmails := CkMessageSet_getCount(mset);
i := 0;
while i < numEmails do
  begin
    success := CkImap_FetchSingleBd(imap,CkMessageSet_GetId(mset,i),bUid,bdMime);
    //  ...
    //  ...

    i := i + 1;
  end;

CkImap_Dispose(imap);
CkMessageSet_Dispose(mset);
CkBinData_Dispose(bdMime);