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