Delphi ActiveX Requires Chilkat v11.0.0+
Delphi ActiveX
Transition from MailMan.FetchMultiple to MailMan.FetchUidlSet
Provides instructions for replacing deprecated FetchMultiple method calls with FetchUidlSet.Chilkat Delphi ActiveX Downloads
var
success: Integer;
mailman: TChilkatMailMan;
saUidls: TCkStringArray;
stUidls: TChilkatStringTable;
bundleObj: IChilkatEmailBundle;
headersOnly: Integer;
numBodyLines: Integer;
bundleOut: TChilkatEmailBundle;
begin
success := 0;
mailman := TChilkatMailMan.Create(Self);
// ...
// ...
saUidls := TCkStringArray.Create(Self);
saUidls.Append('aaa');
saUidls.Append('bbb');
saUidls.Append('ccc');
stUidls := TChilkatStringTable.Create(Self);
stUidls.Append('aaa');
stUidls.Append('bbb');
stUidls.Append('ccc');
// ------------------------------------------------------------------------
// The FetchMultiple method is deprecated:
bundleObj := mailman.FetchMultiple(saUidls.ControlInterface);
if (mailman.LastMethodSuccess = 0) then
begin
Memo1.Lines.Add(mailman.LastErrorText);
Exit;
end;
// ...
// ...
// ------------------------------------------------------------------------
// Do the equivalent using FetchUidlSet.
// Your application creates a new, empty EmailBundle object which is passed
// in the last argument and filled upon success.
headersOnly := 0;
// Irrelevant because we are not downloading headers-only.
numBodyLines := 0;
bundleOut := TChilkatEmailBundle.Create(Self);
success := mailman.FetchUidlSet(stUidls.ControlInterface,headersOnly,numBodyLines,bundleOut.ControlInterface);
if (success = 0) then
begin
Memo1.Lines.Add(mailman.LastErrorText);
Exit;
end;