PowerBuilder
PowerBuilder
Validate a Smartcard PIN
See more Certificates Examples
Validates a smartcard PIN. This example only runs on Windows and requires Chilkat v9.5.0.77 or greater.Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
oleobject loo_Cert
integer li_PinValid
li_Success = 0
// Note: Requires Chilkat v9.5.0.77 or greater.
loo_Cert = create oleobject
li_rc = loo_Cert.ConnectToNewObject("Chilkat.Cert")
if li_rc < 0 then
destroy loo_Cert
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_Cert.SmartCardPin = "000000"
// Load the certificate on the smartcard currently in the reader (or on the USB token).
// Pass an empty string to allow Chilkat to automatically choose the CSP (Cryptographi Service Provider).
// See Load Certificate on Smartcard for information about explicitly selecting a particular CSP.
li_Success = loo_Cert.LoadFromSmartcard("")
if li_Success <> 1 then
Write-Debug loo_Cert.LastErrorText
destroy loo_Cert
return
end if
// Check to see if the SmartCardPin property contains the valid PIN for the smartcard.
li_PinValid = loo_Cert.CheckSmartCardPin()
if li_PinValid < 0 then
Write-Debug "Unable to check the PIN validity."
Write-Debug loo_Cert.LastErrorText
destroy loo_Cert
return
end if
if li_PinValid = 1 then
Write-Debug "PIN is valid."
else
Write-Debug "PIN is invalid."
end if
destroy loo_Cert