Delphi ActiveX Requires Chilkat v11.0.0+
Delphi ActiveX
Transition from MailMan.TransferMultipleMime to MailMan.FetchMimeBd
Provides instructions for replacing deprecated TransferMultipleMime method calls with FetchMimeBd.Chilkat Delphi ActiveX Downloads
var
success: Integer;
mailman: TChilkatMailMan;
saUidls: TCkStringArray;
stUidls: TChilkatStringTable;
sa: ICkStringArray;
bdMime: TChilkatBinData;
numUidls: Integer;
i: Integer;
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 TransferMultipleMime method is deprecated:
sa := mailman.TransferMultipleMime(saUidls.ControlInterface);
if (mailman.LastMethodSuccess = 0) then
begin
Memo1.Lines.Add(mailman.LastErrorText);
Exit;
end;
// ...
// ...
// ------------------------------------------------------------------------
// Do the equivalent using FetchMimeBd.
mailman.ImmediateDelete := 0;
success := 0;
bdMime := TChilkatBinData.Create(Self);
numUidls := stUidls.Count;
i := 0;
while i < numUidls do
begin
success := mailman.FetchMimeBd(stUidls.StringAt(i),bdMime.ControlInterface);
// ...
// Mark the email for deletion.
success := mailman.DeleteByUidl(stUidls.StringAt(i));
// ...
i := i + 1;
end;
// emails marked for deletion will be deleted at this time
success := mailman.Pop3EndSession();