DAOpenFromStreamWithEncryptionKey
文档管理、直接访问功能、安全、流输入
描述
通过直接接受十六进制文件加密密钥(而不是从密码派生)打开加密的可查找流,用于经授权的恢复或调查
语法
Delphi
Function TPDFlib.DAOpenFromStreamWithEncryptionKey(InStream: TStream; Const EncryptionKeyHex: WideString; Options: Integer = 0): Integer;参数
| InStream | 一个非 nil 的可查找 PDF 流,其所有权仍归调用方 |
|---|---|
| EncryptionKeyHex | 长度为偶数的 ASCII 十六进制密钥,不带前缀或空白字符,长度与加密修订版本的要求完全一致 |
| Options | 为 0 时要求存在可用的验证值;PDF_RAW_KEY_ALLOW_UNVERIFIED 仅在文档没有可用验证值时才允许接受其他方面有效的密钥 |
返回值
| 非零 | Direct Access 文件句柄 |
|---|---|
| 0 | 无法打开输入;请检查 LastErrorCode |
备注
库从不取得 InStream 的所有权,关闭直接访问句柄后调用方仍可继续使用该流
可用的校验器始终会被检查,绝不接受不匹配
打开后请调用 DAGetEncryptionKeyValidation 查看验证结果