DataFlex
DataFlex
Load Certificate from Smart Card by Serial Number
See more Certificates Examples
This example requires Chilkat v9.5.0.87 or greater. It uses a Windows-only function named LoadFromSmartcard.This example loads a certificate specified by its hexidecimal serial number. The LoadFromSmartcard method will examine the connected smart cards and USB tokens and will find and load the certificate having the specified serial number.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoCert
Handle hoCert2
String sTemp1
String sTemp2
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatCert)) To hoCert
If (Not(IsComObjectCreated(hoCert))) Begin
Send CreateComObject of hoCert
End
// If you know the smart card PIN, set it prior to loading from the smartcard/USB token.
Set ComSmartCardPin Of hoCert To "12345678"
// To load the certificate specified by its hexidecimal serial number, pass the string "serial=<hexSerialNumber>". For example:
Get ComLoadFromSmartcard Of hoCert "serial=4A1E6ADCF59DB1EFBAAE438D2C52664E40D16A87" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoCert To sTemp1
Showln sTemp1
Showln "Certificate not loaded."
Procedure_Return
End
Get ComSubjectDN Of hoCert To sTemp1
Get ComSerialNumber Of hoCert To sTemp2
Showln "Found: " sTemp1 " serial=" sTemp2
// Here's another example.
// Note: serial numbers can be of different lengths. The length of the serial number depends on the certificate.
Get Create (RefClass(cComChilkatCert)) To hoCert2
If (Not(IsComObjectCreated(hoCert2))) Begin
Send CreateComObject of hoCert2
End
Get ComLoadFromSmartcard Of hoCert2 "serial=66BE58138D761E92BC594A722932657BE26D421F" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoCert2 To sTemp1
Showln sTemp1
Showln "Certificate not loaded."
Procedure_Return
End
Get ComSubjectDN Of hoCert2 To sTemp1
Get ComSerialNumber Of hoCert2 To sTemp2
Showln "Found: " sTemp1 " serial=" sTemp2
End_Procedure