Sample code for 30+ languages & platforms
Delphi ActiveX

Send a Raw IMAP Command

See more IMAP Examples

Demonstrates the Chilkat Imap.SendRawCommand method, which sends raw IMAP command text and returns the raw server response. Pass the command itself (such as NOOP) without an IMAP tag — Chilkat adds the tag automatically. This example sends a raw NOOP.

Background: Every IMAP command a client sends is prefixed with a short unique tag (like a001) so the client can match the tagged completion response to the command it issued. SendRawCommand handles that tagging for you and returns the server's reply verbatim — an escape hatch for issuing a command Chilkat doesn't wrap directly, or a server-specific extension, without leaving the established authenticated session.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
imap: TChilkatImap;
response: WideString;

begin
success := 0;

//  Demonstrates the Imap.SendRawCommand method, which sends raw IMAP command text and returns
//  the raw server response.  Pass the command itself (such as NOOP) without an IMAP tag --
//  Chilkat adds the tag automatically.

imap := TChilkatImap.Create(Self);

imap.Ssl := 1;
imap.Port := 993;

success := imap.Connect('imap.example.com');
if (success = 0) then
  begin
    Memo1.Lines.Add(imap.LastErrorText);
    Exit;
  end;
success := imap.Login('user@example.com','myPassword');
if (success = 0) then
  begin
    Memo1.Lines.Add(imap.LastErrorText);
    Exit;
  end;

//  Send a raw IMAP command and read the raw response.
response := imap.SendRawCommand('NOOP');
if (imap.LastMethodSuccess = 0) then
  begin
    Memo1.Lines.Add(imap.LastErrorText);
    Exit;
  end;
Memo1.Lines.Add(response);

success := imap.Disconnect();
if (success = 0) then
  begin
    Memo1.Lines.Add(imap.LastErrorText);
    Exit;
  end;