Pascal (Lazarus/Delphi)
Pascal (Lazarus/Delphi)
Get a Header Field by Name
See more Email Object Examples
Demonstrates the Chilkat Email.GetHeaderField method, which returns the value of a header field by name. Header-field names are case-insensitive, so X-Priority and x-priority refer to the same field. This example reads several headers by name.
Background: Looking up a header by name is the quickest way to read a known field like
Subject or a custom X- header. One caveat: some header names (such as Received) can legitimately appear more than once. When a field may repeat and you need every occurrence, enumerate by index with GetHeaderFieldName and GetHeaderFieldValue instead of looking up by name.Chilkat Pascal (Lazarus/Delphi) Downloads
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
email: TEmail;
begin
// Demonstrates the GetHeaderField method, which returns the value of a header field by
// name. Header-field names are case-insensitive.
email := TEmail.Create;
email.Subject := 'Quarterly report';
email.From := 'alice@example.com';
email.AddHeaderField('X-Priority','1');
// Get header field values by name.
WriteLn('Subject = ' + email.GetHeaderField('Subject'));
WriteLn('From = ' + email.GetHeaderField('From'));
WriteLn('X-Priority = ' + email.GetHeaderField('x-priority'));
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.