Sample code for 30+ languages & platforms
Delphi ActiveX Requires Chilkat v11.0.0+

Transition from Imap.ThreadCmd to Imap.QueryThread

Provides instructions for replacing deprecated ThreadCmd method calls with QueryThread.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
imap: TChilkatImap;
threadAlg: WideString;
charset: WideString;
searchCriteria: WideString;
bUid: Integer;
jsonObj: IChilkatJsonObject;
json: TChilkatJsonObject;

begin
success := 0;

imap := TChilkatImap.Create(Self);

//  ...
//  ...

threadAlg := 'REFERENCES';
charset := 'UTF-8';
searchCriteria := 'SUBJECT a';
bUid := 1;

//  ------------------------------------------------------------------------
//  The ThreadCmd method is deprecated:

jsonObj := imap.ThreadCmd(threadAlg,charset,searchCriteria,bUid);
if (imap.LastMethodSuccess = 0) then
  begin
    Memo1.Lines.Add(imap.LastErrorText);
    Exit;
  end;

//  ...
//  ...

//  ------------------------------------------------------------------------
//  Do the equivalent using QueryThread.
//  Your application creates a new, empty JsonObject object which is passed 
//  in the last argument and filled upon success.

imap.SearchCharset := 'UTF-8';

json := TChilkatJsonObject.Create(Self);
success := imap.QueryThread(threadAlg,searchCriteria,bUid,json.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(imap.LastErrorText);
    Exit;
  end;