DAOpenFileWithEncryptionKeyA
Gerenciamento de documentos, Funcionalidade de acesso direto, Segurança
Descrição
O sufixo A indica o ponto de entrada ANSI (char) da DLL; a superfície ActiveX/COM expõe somente a forma Unicode. O comportamento é idêntico ao de DAOpenFileWithEncryptionKey e os argumentos de string são interpretados usando a página de código atual de SetAnsiModeAbre um PDF criptografado para recuperação ou investigação autorizada aceitando diretamente a chave hexadecimal de criptografia de arquivo em vez de derivá-la de uma senhaO arquivo é aberto por meio de um handle de origem somente leitura e não pode receber acréscimos no próprio arquivo
Sintaxe
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);Parâmetros
| InputFileName | O caminho e o nome do PDF criptografado |
|---|---|
| EncryptionKeyHex | Uma chave ASCII hexadecimal de comprimento par sem prefixo ou espaço em branco; as revisões 2 a 4 exigem o comprimento exato de chave declarado pelo dicionário de criptografia e as revisões 5 a 7 exigem 32 bytes |
| Options | Zero exige um verificador disponível; PDF_RAW_KEY_ALLOW_UNVERIFIED permite uma chave válida em outras condições somente quando o documento não tem verificador utilizável |
Valores retornados
| Diferente de zero | Um handle de arquivo de acesso direto |
|---|---|
| 0 | A entrada não pôde ser aberta; examine LastErrorCode, incluindo PDFLIB_ERROR_RAW_ENCRYPTION_KEY_INVALID para sintaxe, comprimento, opções ou verificação inválidas |
Observações
Os valores /U de revisão 2 a 4 disponíveis e os valores /Perms de revisão 5 a 7 disponíveis são sempre verificados; PDF_RAW_KEY_ALLOW_UNVERIFIED nunca aceita uma não correspondênciaChame
DAGetEncryptionKeyValidation depois de abrir para distinguir handles verificados e explicitamente não verificadosAs strings ANSI são convertidas para caracteres largos com a página de código atual de
SetAnsiMode antes de a solicitação ser processadaA chave é material de credencial sensível e deve ser obtida, transportada e armazenada sob os mesmos controles de uma senha de documento