Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) Load Default Certificate from Smart Card or TokenSee more Certificates ExamplesChilkat contains internal logic to examine a connected smart card or USB token, and will make decisions based on make/model to successfully interact with the hardware. When faced with a new smartcard or token, the best starting point is to call LoadFromSmartcard with an empty string argument to see what Chilkat discovers.
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 cert: HCkCert; success: Boolean; begin cert := CkCert_Create(); // If you know the smart card PIN, it's good to set it prior to loading from the smartcard/USB token. CkCert_putSmartCardPin(cert,'12345678'); // To let Chilkat discover what smartcard or token is connected, pass an empty string to LoadFromSmartcard. // When testing in this way, it's best to have only a single smartcard or token connected to the system. success := CkCert_LoadFromSmartcard(cert,''); if (success = False) then begin Memo1.Lines.Add(CkCert__lastErrorText(cert)); Memo1.Lines.Add('Certificate not loaded.'); Exit; end; // The LastErrorText property on all Chilkat objects will contain // information even when the method call is successful. // You can examine the LastErrorText to see what Chilkat found and // what decisions were made. // // For example, if a certificate was successfully loaded via LoadFromSmartcard, // but then signing failed, such as w/ Pdf, XmlDSig, CAdES, etc., // then we would want to examine the LastErrorText from the call to // LoadFromSmartcard to get detailed information about the card. Memo1.Lines.Add(CkCert__lastErrorText(cert)); Memo1.Lines.Add('Found: ' + CkCert__subjectDN(cert) + ' serial=' + CkCert__serialNumber(cert)); CkCert_Dispose(cert); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.