Sample code for 30+ languages & platforms
Pascal (Lazarus/Delphi)

Email Recipients - AddTo, AddCC, AddBcc, AddMultipleTo, AddMultipleCC, AddMultipleBcc

This example demonstrates the usage of AddTo, AddCC, AddBcc, AddMultipleTo, AddMultipleCC, and AddMultipleBcc.

Chilkat Pascal (Lazarus/Delphi) Downloads

Pascal (Lazarus/Delphi)
program ChilkatDemo;

// Demonstrates using the Chilkat Pascal wrapper via the C bridge DLL.
// Builds as a console application under Lazarus (FPC) or Delphi.

{$IFDEF FPC}
  {$MODE DELPHI}
{$ENDIF}
{$APPTYPE CONSOLE}

uses
  {$IFDEF UNIX}
  cthreads,
  {$ENDIF}
  SysUtils,
  CkDllLoader,
  Chilkat.Email;

// ---------------------------------------------------------------------------

procedure RunDemo;
var
  success: Boolean;
  email: TEmail;

begin
  success := False;

  //  An email can have any number of To, CC, or Bcc recipients.
  email := TEmail.Create;

  //  One recipient per AddTo, AddCC, or AddBcc call may be added:
  //  The 1st argument is the friendly name, the 2nd argument
  //  is the email address.
  success := email.AddTo('Chilkat Support','support@chilkatsoft.com');
  success := email.AddTo('Person 1','person1@chilkatsoft.com');
  success := email.AddTo('Person 2','person2@chilkatsoft.com');
  success := email.AddTo('Person 3','person3@chilkatsoft.com');

  //  This email now has 4 "To" recipients.

  //  Now add some CC recipients:
  //  Note: the friendly name may be empty if desired...
  success := email.AddCC('Person 4','person4@chilkatsoft.com');
  success := email.AddCC('','person5@chilkatsoft.com');
  success := email.AddCC('Person 6','person6@chilkatsoft.com');

  //  Now the email has 7 total recipients (3 "To" and 4 "CC")

  //  Now add some Bcc recipients:
  success := email.AddBcc('','person7@chilkatsoft.com');
  success := email.AddBcc('Person 8','person8@chilkatsoft.com');

  //  Clear all recipients via ClearTo, ClearCC, and ClearBcc:
  email.ClearTo();
  email.ClearCC();
  email.ClearBcc();

  //  The email is now back to 0 recipients...

  //  Add recipients just as before, but this time use
  //  AddMultipleTo, AddMultipleCC, and AddMultipleBcc.
  //  These methods accept a comma-separated list of 
  //  email addresses.  For example:

  success := email.AddMultipleTo('Chilkat Support <support@chilkatsoft.com>, Person 1 <person1@chilkatsoft.com>, Person 2 <person2@chilkatsoft.com>, Person 3 <person3@chilkatsoft.com>');

  success := email.AddMultipleCC('Person 4 <person4@chilkatsoft.com>, person5@chilkatsoft.com, Person 6 <person6@chilkatsoft.com>');

  success := email.AddMultipleBcc('person7@chilkatsoft.com, Person 8 <person8@chilkatsoft.com>');

  email.Body := 'this is a test';
  email.Subject := 'this is a test';

  //  Display the MIME:
  WriteLn(email.GetMime());


  email.Free;

end;

// ---------------------------------------------------------------------------

begin

  try
    RunDemo;
  except
    on E: Exception do
      WriteLn('Unhandled exception: ', E.ClassName, ': ', E.Message);
  end;

  WriteLn;
  {$IFDEF MSWINDOWS}
  WriteLn('Press Enter to exit...');
  ReadLn;
  {$ENDIF}
end.