Delphi DLL
Delphi DLL
Transition from Imap.FetchHeaders to Imap.FetchMsgSet
Provides instructions for replacing deprecated FetchHeaders method calls with FetchMsgSet.Chilkat Delphi DLL Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, EmailBundle, Imap, MessageSet;
...
procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
imap: HCkImap;
mset: HCkMessageSet;
bundleObj: HCkEmailBundle;
headersOnly: Boolean;
bundleOut: HCkEmailBundle;
begin
success := False;
imap := CkImap_Create();
// ...
// ...
mset := CkMessageSet_Create();
success := CkImap_QueryMbx(imap,'FROM joe@example.com',True,mset);
// ...
// ...
// ------------------------------------------------------------------------
// The FetchHeaders method is deprecated:
bundleObj := CkImap_FetchHeaders(imap,mset);
if (CkImap_getLastMethodSuccess(imap) = False) then
begin
Memo1.Lines.Add(CkImap__lastErrorText(imap));
Exit;
end;
// ...
// ...
CkEmailBundle_Dispose(bundleObj);
// ------------------------------------------------------------------------
// Do the equivalent using FetchMsgSet.
// Your application creates a new, empty EmailBundle object which is passed
// in the last argument and filled upon success.
headersOnly := True;
bundleOut := CkEmailBundle_Create();
success := CkImap_FetchMsgSet(imap,headersOnly,mset,bundleOut);
if (success = False) then
begin
Memo1.Lines.Add(CkImap__lastErrorText(imap));
Exit;
end;
CkImap_Dispose(imap);
CkMessageSet_Dispose(mset);
CkEmailBundle_Dispose(bundleOut);
end;