Sample code for 30+ languages & platforms
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

PowerBuilder
integer li_rc
long li_Success
oleobject loo_Cert
long 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