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

Explaining the Email FromName, FromAddress, and From Properties

See more Email Object Examples

This example explains the email object's FromName, FromAddress, and From properties.

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
  email1: TEmail;
  email2: TEmail;

begin
  //  The email's FROM name and address can be set in several ways.
  //  It can include an optional friendly name (which is just a description),
  //  and it must include an address.

  //  For example:
  email1 := TEmail.Create;
  email1.Subject := 'test';
  email1.Body := 'test';

  email1.FromName := 'Joe Sample';
  email1.FromAddress := 'joe.sample@example.com';

  //  the From property contains both the FromName and FromAddress
  //  This produces the following output:
  //  From: "Joe Sample" <joe.sample@example.com>
  WriteLn('From: ' + email1.From);
  WriteLn('--------------------------------------------------');

  //  Examine the MIME of the email:
  WriteLn(email1.GetMime());
  WriteLn('--------------------------------------------------');

  //  Output is:

  //  	MIME-Version: 1.0
  //  	Date: Wed, 16 Nov 2016 12:32:13 -0600
  //  	Message-ID: <02B461C6D12FA6686C3151A649ED8D5BBFBE0721@CHILKAT13>
  //  	Content-Type: text/plain
  //  	Content-Transfer-Encoding: 7bit
  //  	X-Priority: 3 (Normal)
  //  	Subject: test
  //  	From: "Joe Sample" <joe.sample@example.com>
  //  
  //  	test

  //  --------------------------------------------
  //  Alternatively, the From property can be set, and this 
  //  implicitly sets the FromName and FromAddress properties.

  email2 := TEmail.Create;
  email2.From := 'Joe Sample <joe.sample@example.com>';

  WriteLn('FromName: ' + email2.FromName);
  WriteLn('FromAddress: ' + email2.FromAddress);
  WriteLn('--------------------------------------------------');

  WriteLn(email2.GetMime());


  email1.Free;
  email2.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.