Delphi ActiveX
Delphi ActiveX
Transition from Imap.FetchChunk to Imap.FetchRange
Provides instructions for replacing deprecated FetchChunk method calls with FetchRange.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;
imap: TChilkatImap;
startSeqNum: Integer;
count: Integer;
failedSet: TMessageSet;
fetchedSet: TMessageSet;
bundleObj: IChilkatEmailBundle;
headersOnly: Integer;
bundleOut: TChilkatEmailBundle;
begin
success := 0;
imap := TChilkatImap.Create(Self);
// ...
// ...
startSeqNum := 1;
count := 5;
failedSet := TMessageSet.Create(Self);
fetchedSet := TMessageSet.Create(Self);
// ------------------------------------------------------------------------
// The FetchChunk method is deprecated:
bundleObj := imap.FetchChunk(startSeqNum,count,failedSet.ControlInterface,fetchedSet.ControlInterface);
if (imap.LastMethodSuccess = 0) then
begin
Memo1.Lines.Add(imap.LastErrorText);
Exit;
end;
// ...
// ...
// ------------------------------------------------------------------------
// Do the equivalent using FetchRange.
// Your application creates a new, empty EmailBundle object which is passed
// in the last argument and filled upon success.
headersOnly := 0;
bundleOut := TChilkatEmailBundle.Create(Self);
success := imap.FetchRange(headersOnly,startSeqNum,count,bundleOut.ControlInterface);
if (success = 0) then
begin
Memo1.Lines.Add(imap.LastErrorText);
Exit;
end;
end;