Delphi ActiveX
Delphi ActiveX
Transition from MailMan.FetchMultiple to MailMan.FetchUidlSet
Provides instructions for replacing deprecated FetchMultiple method calls with FetchUidlSet.Chilkat Delphi ActiveX Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
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;
end;