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) Get PDF Signer CertsSee more PDF Signatures ExamplesThis example demonstrates how to validate the signatures in a PDF and also shows how to get each signature's signer certificate. Note: This example requires Chilkat v9.5.0.87 or greater. 
 #include <CkPdf.h> #include <CkJsonObject.h> #include <CkCert.h> void ChilkatSample(void) { CkString strOut; // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. CkPdf pdf; // Load a PDF that has cryptographic signatures to be validated bool success = pdf.LoadFile("qa_data/pdf/sign_testing_1/helloSigned2.pdf"); if (success == false) { strOut.append(pdf.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // Each time we verify a signature, information about the signature is written into // sigInfo (replacing whatever sigInfo previously contained). CkJsonObject sigInfo; // Iterate over each signature and validate each. int numSignatures = pdf.get_NumSignatures(); bool validated = false; CkCert cert; int i = 0; while (i < numSignatures) { validated = pdf.VerifySignature(i,sigInfo); strOut.append("Signature "); strOut.appendInt(i); strOut.append(" validated: "); strOut.appendInt(validated); strOut.append("\r\n"); // The GetSignerCert method was added in Chilkat v9.5.0.87 // After calling VerifySignature, you can get the signer certificate by calling // GetSignerCert with the same index. success = pdf.GetSignerCert(i,cert); if (success != false) { strOut.append("PDF signer certificate: "); strOut.append(cert.subjectDN()); strOut.append("\r\n"); } i = i + 1; } strOut.append("Finished."); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); }  | 
  ||||
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.