Sample code for 30+ languages & platforms
Delphi DLL

Load Certificate from Smartcard in Reader (or from USB Token)

See more Certificates Examples

Demonstrates how to load the certificate that is on the smartcard currently inserted into the smartcard reader. (Also can load the smartcard on a USB token.)

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Cert;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
cert: HCkCert;

begin
success := False;

cert := CkCert_Create();

// If you know the smart card PIN, set it prior to loading from the smartcard/USB token.
CkCert_putSmartCardPin(cert,'12345678');

// Pass an empty string to allow Chilkat to discover the smart card or USB token automatically.
success := CkCert_LoadFromSmartcard(cert,'');
if (success = False) then
  begin
    Memo1.Lines.Add(CkCert__lastErrorText(cert));
    Exit;
  end;

Memo1.Lines.Add('Cert loaded from smartcard: ' + CkCert__subjectCN(cert));

CkCert_Dispose(cert);

end;