Sample code for 30+ languages & platforms
AutoIt

Load Default Certificate from Smart Card or Token

See more Certificates Examples

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

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

$oCert = ObjCreate("Chilkat.Cert")

; If you know the smart card PIN, it's good to set it prior to loading from the smartcard/USB token.
$oCert.SmartCardPin = "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.
$bSuccess = $oCert.LoadFromSmartcard("")
If ($bSuccess = False) Then
    ConsoleWrite($oCert.LastErrorText & @CRLF)
    ConsoleWrite("Certificate not loaded." & @CRLF)
    Exit
EndIf

; 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.
ConsoleWrite($oCert.LastErrorText & @CRLF)

ConsoleWrite("Found: " & $oCert.SubjectDN & " serial=" & $oCert.SerialNumber & @CRLF)