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

Unlocks the Chilkat Crypt2 Class

Demonstrates how to unlock the Chilkat Crypt2 functionality. The UnlockComponent method should be called once at the beginning of the program. Once unlocked, all subsequent objects are created in the unlocked state. There is no need to call UnlockComponent for every instance of a Chilkat object.

The object that called UnlockComponent may be discarded (deleted, deallocated, etc.). It does not need to remain in existence for subsequent objects to be already unlocked when created.

Also, the LastErrorText method can be examined to verify that a purchased unlock code was indeed recognized.

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.Global;

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

procedure RunDemo;
var
  success: Boolean;
  glob: TGlobal;
  status: Integer;

begin
  success := False;

  //  The Chilkat API can be unlocked for a fully-functional 30-day trial by passing any
  //  string to the UnlockBundle method.  A program can unlock once at the start. Once unlocked,
  //  all subsequently instantiated objects are created in the unlocked state. 
  //  
  //  <b>After licensing Chilkat, replace the "Anything for 30-day trial" with the purchased unlock code.</b>
  //  To verify the purchased unlock code was recognized, examine the contents of the LastErrorText
  //  property after unlocking.  For example:
  glob := TGlobal.Create;
  success := glob.UnlockBundle('Anything for 30-day trial');
  if (success <> True) then
    begin
      WriteLn(glob.LastErrorText);
      Exit;
    end;

  status := glob.UnlockStatus;
  if (status = 2) then
    begin
      WriteLn('Unlocked using purchased unlock code.');
    end
  else
    begin
      WriteLn('Unlocked in trial mode.');
    end;

  //  The LastErrorText can be examined in the success case to see if it was unlocked in
  //  trial more, or with a purchased unlock code.
  WriteLn(glob.LastErrorText);


  glob.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.