![]() |
Chilkat • HOME • Android™ • AutoIt • C • C# • C++ • Chilkat2-Python • CkPython • Classic ASP • DataFlex • Delphi DLL • Go • Java • Node.js • Objective-C • PHP Extension • Perl • PowerBuilder • PowerShell • PureBasic • Ruby • SQL Server • Swift • Tcl • Unicode C • Unicode C++ • VB.NET • VBScript • Visual Basic 6.0 • Visual FoxPro • Xojo Plugin
(Unicode C++) List Microsoft Storage ProvidersGets the Microsoft CNG and legacy CryptoAPI storage providers that exist on the Windows system. Important: This example requires Chilkat v9.5.0.83 or greater.
#include <CkKeyContainerW.h> #include <CkJsonObjectW.h> void ChilkatSample(void) { // This example requires Chilkat v9.5.0.83 or greater. CkKeyContainerW keyCon; CkJsonObjectW json; json.put_EmitCompact(false); bool success = keyCon.GetStorageProviders(json); if (success != true) { wprintf(L"%s\n",keyCon.lastErrorText()); return; } wprintf(L"%s\n",json.emit()); // Sample JSON returned by GetStorageProviders // { // "cng": [ // "Microsoft Software Key Storage Provider", // "Microsoft Passport Key Storage Provider", // "Microsoft Platform Crypto Provider", // "Microsoft Smart Card Key Storage Provider" // ], // "legacy": [ // "Microsoft Base Cryptographic Provider v1.0", // "Microsoft Base DSS and Diffie-Hellman Cryptographic Provider", // "Microsoft Base DSS Cryptographic Provider", // "Microsoft Base Smart Card Crypto Provider", // "Microsoft DH SChannel Cryptographic Provider", // "Microsoft Enhanced Cryptographic Provider v1.0", // "Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider", // "Microsoft Enhanced RSA and AES Cryptographic Provider", // "Microsoft RSA SChannel Cryptographic Provider", // "Microsoft Strong Cryptographic Provider" // ] // } // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON const wchar_t *name = 0; // Iterate over the CNG storage containers int i = 0; int numStorageContainers = json.SizeOfArray(L"cng"); while (i < numStorageContainers) { json.put_I(i); name = json.stringOf(L"cng[i]"); wprintf(L"%s\n",name); i = i + 1; } wprintf(L"--\n"); // Iterate over the legacy CryptoAPI Cryptographic Storage Providers i = 0; numStorageContainers = json.SizeOfArray(L"legacy"); while (i < numStorageContainers) { json.put_I(i); name = json.stringOf(L"legacy[i]"); wprintf(L"%s\n",name); i = i + 1; } } |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.