![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript 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
(Visual FoxPro) Example: Mime.GetDecryptCertInfo methodDemonstrates the Note: This example requires Chilkat v11.4.0 or greater.
LOCAL lnSuccess LOCAL loMime LOCAL loJson LOCAL lcSerial LOCAL lcIssuerCN LOCAL i LOCAL lnCount lnSuccess = 0 loMime = CreateObject('Chilkat.Mime') * Load MIME that is has Content-Type like this: * Content-Type: application/pkcs7-mime; smime-type="enveloped-data"; name="smime.p7m"; smime-type="enveloped-data" lnSuccess = loMime.LoadMimeFile("qa_data/mime/enveloped_data.eml") IF (lnSuccess = 0) THEN ? loMime.LastErrorText RELEASE loMime CANCEL ENDIF * Get information about the certificate that would be needed to decrypt. * An enveloped-data can potentially be decrypted by multiple certificates if it was encrypted in a way that allows it, * but in most cases, only a single certificate with associated private key (that of the message recipient) is possible. loJson = CreateObject('Chilkat.JsonObject') lnSuccess = loMime.GetDecryptCertInfo(loJson) IF (lnSuccess = 0) THEN ? loMime.LastErrorText RELEASE loMime RELEASE loJson CANCEL ENDIF loJson.EmitCompact = 0 ? loJson.Emit() * Sample output: * { * "recipientInfo": [ * { * "serial": "****", * "issuerCN": "****" * } * ] * } * Get each certificate's information like this: i = 0 lnCount = loJson.SizeOfArray("recipientInfo") DO WHILE i < lnCount loJson.I = i lcSerial = loJson.StringOf("recipientInfo[i].serial") lcIssuerCN = loJson.StringOf("recipientInfo[i].issuerCN") i = i + 1 ENDDO RELEASE loMime RELEASE loJson |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.