Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) PDF Get Encryption and Permissions InformationSee more PDF Signatures ExamplesDetermine if a PDF is encrypted, and the associated user permissions. Note: Some PDFs are encrypted but not password-protected. In such cases, encryption is used primarily for preventing unauthorized modifications to the document, but it doesn't restrict access. Therefore, you can open and read the document without a password. Note: This example requires Chilkat v9.5.0.96 or later.
Use ChilkatAx-win32.pkg Procedure Test Handle hoPdf Boolean iSuccess Variant vLjd Handle hoLjd String sPdfVersion String sFilter Integer iKeyLength Integer V Integer R Integer P String sPrintLowResolution String sPrintHighResolution String sModifyOther String sModifyAnnotations String sModifyForms String sFillInForms String sAssembleDoc String sExtractAnyPurpose String sExtractAccessibility String sMethod String sTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatPdf)) To hoPdf If (Not(IsComObjectCreated(hoPdf))) Begin Send CreateComObject of hoPdf End // Open a PDF. // Starting in Chilkat v9.5.0.96, the LastJsonData will contain information about encryption and permissions. Get ComLoadFile Of hoPdf "c:/someDir/sample.pdf" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoPdf To sTemp1 Showln sTemp1 Procedure_Return End // Examine the LastJsonData Get ComLastJsonData Of hoPdf To vLjd If (IsComObject(vLjd)) Begin Get Create (RefClass(cComChilkatJsonObject)) To hoLjd Set pvComObject Of hoLjd To vLjd End Set ComEmitCompact Of hoLjd To False Get ComEmit Of hoLjd To sTemp1 Showln sTemp1 // Sample output: // { // "pdfVersion": "1.6", // "encrypt": { // "filter": "/Standard", // "keyLength": 128, // "V": 4, // "R": 4, // "P": -1340, // "perm": { // "printLowResolution": "allowed", // "printHighResolution": "allowed", // "modifyOther": "not allowed", // "modifyAnnotations": "allowed", // "modifyForms": "not allowed", // "fillInForms": "allowed", // "assembleDoc": "allowed", // "extractAnyPurpose": "not allowed", // "extractAccessibility": "not allowed" // }, // "method": "AESV2" // } // } // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON Get ComStringOf Of hoLjd "pdfVersion" To sPdfVersion Get ComStringOf Of hoLjd "encrypt.filter" To sFilter Get ComIntOf Of hoLjd "encrypt.keyLength" To iKeyLength Get ComIntOf Of hoLjd "encrypt.V" To V Get ComIntOf Of hoLjd "encrypt.R" To R Get ComIntOf Of hoLjd "encrypt.P" To P Get ComStringOf Of hoLjd "encrypt.perm.printLowResolution" To sPrintLowResolution Get ComStringOf Of hoLjd "encrypt.perm.printHighResolution" To sPrintHighResolution Get ComStringOf Of hoLjd "encrypt.perm.modifyOther" To sModifyOther Get ComStringOf Of hoLjd "encrypt.perm.modifyAnnotations" To sModifyAnnotations Get ComStringOf Of hoLjd "encrypt.perm.modifyForms" To sModifyForms Get ComStringOf Of hoLjd "encrypt.perm.fillInForms" To sFillInForms Get ComStringOf Of hoLjd "encrypt.perm.assembleDoc" To sAssembleDoc Get ComStringOf Of hoLjd "encrypt.perm.extractAnyPurpose" To sExtractAnyPurpose Get ComStringOf Of hoLjd "encrypt.perm.extractAccessibility" To sExtractAccessibility Get ComStringOf Of hoLjd "encrypt.method" To sMethod End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.