Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) Open Smartcard Certificate Store (or from USB Token)Demonstrates how to open the certificate store of the smart card currently in the reader (or the USB token). Iterates over the certs found on the smartcard. Note: This example requires Chilkat v9.5.0.80 or later.
#include <CkCertStore.h> #include <CkCert.h> void ChilkatSample(void) { CkString strOut; CkCertStore certStore; // To allow Chilkat to automatically choose a CSP, // set the CSP name to the empty string. const char *cspName = ""; // Chilkat will choose the 1st 3rd party CSP in the following list // that it finds on the system. If no 3rd party CSP is found, then // the "Microsoft Base Smart Card Crypto Provider" is automatically chosen // // Bit4id Universal Middleware Provider // eToken Base Cryptographic Provider // FTSafe ePass1000 RSA Cryptographic Service Provider // EnterSafe ePass2003 CSP v2.0 // Gemalto Classic Card CSP // PROXKey CSP India V1.0 // PROXKey CSP India V2.0 // TRUST KEY CSP V1.0 // Watchdata Brazil CSP V1.0 // Luna Cryptographic Services for Microsoft Windows // Luna SChannel Cryptographic Services for Microsoft Windows // Safenet RSA Full Cryptographic Provider // nCipher Enhanced Cryptographic Provider // SafeSign Standard Cryptographic Service Provider // SafeSign Standard RSA and AES Cryptographic Service Provider // MySmartLogon NFC CSP // NFC Connector Enterprise // ActivClient Cryptographic Service Provider // EnterSafe ePass2003 CSP v1.0 // Athena ASECard Crypto CSP" // To get the list of CSP's on your system, see this example: // List Cryptographic Service Providers (CSP's) on a Windows System // Access the certificates on the smart card via the Chilkat certificate store class. bool success = certStore.OpenSmartcard(cspName); if (success == false) { strOut.append(certStore.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // Iterate over certificates on the smartcard. int i = 0; int numCerts = certStore.get_NumCertificates(); strOut.append("numCerts = "); strOut.appendInt(numCerts); strOut.append("\r\n"); while ((i < numCerts)) { CkCert *cert = certStore.GetCertificate(i); strOut.append(cert->subjectCN()); strOut.append("\r\n"); delete cert; i = i + 1; } SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.