DAOpenFileWithEncryptionKeyA
Gestione dei documenti, funzionalità di accesso diretto, sicurezza
Descrizione
La A finale denota il punto di ingresso DLL ANSI (char); la superficie ActiveX/COM espone solo la forma Unicode. Il comportamento è identico a DAOpenFileWithEncryptionKey e gli argomenti stringa vengono interpretati usando la tabella codici corrente di SetAnsiModeApre un PDF cifrato per recupero o analisi autorizzati accettando direttamente la chiave di crittografia del file esadecimale invece di derivarla da una passwordIl file viene aperto tramite un handle con sorgente di sola lettura e non può essere esteso sul posto
Sintassi
Delphi
Function DLDAOpenFileWithEncryptionKeyA(InstanceID: Integer; InputFileName, EncryptionKeyHex: PAnsiChar; Options: Integer): Integer; Stdcall;DLL
int DLDAOpenFileWithEncryptionKeyA(int InstanceID, const char * InputFileName, const char * EncryptionKeyHex, int Options);Parametri
| InputFileName | Percorso e nome del PDF cifrato |
|---|---|
| EncryptionKeyHex | Chiave esadecimale ASCII di lunghezza pari senza prefisso né spazi; le revisioni da 2 a 4 richiedono la lunghezza esatta della chiave dichiarata dal dizionario di crittografia e le revisioni da 5 a 7 richiedono 32 byte |
| Options | Zero richiede un verificatore disponibile; PDF_RAW_KEY_ALLOW_UNVERIFIED consente una chiave altrimenti valida solo quando il documento non ha un verificatore utilizzabile |
Valori restituiti
| Non-zero | Un handle di file Direct Access |
|---|---|
| 0 | L'input non poteva essere aperto; esaminare LastErrorCode, incluso PDFLIB_ERROR_RAW_ENCRYPTION_KEY_INVALID per sintassi, lunghezza, opzioni o verifica non valide |
Osservazioni
I valori /U disponibili delle revisioni da 2 a 4 e i valori /Perms delle revisioni da 5 a 7 vengono sempre verificati; PDF_RAW_KEY_ALLOW_UNVERIFIED non accetta mai una mancata corrispondenzaChiamare
DAGetEncryptionKeyValidation dopo l'apertura per distinguere gli handle verificati da quelli esplicitamente non verificatiLe stringhe ANSI vengono convertite in formato esteso con la tabella codici corrente di
SetAnsiMode prima che la richiesta venga elaborataLa chiave è un materiale credenziale sensibile e va ottenuta, trasportata e archiviata con gli stessi controlli di una password del documento