THPDFObjStmQuarantineReason 型
type-2 xref ロードパス中に /Type /ObjStm コンテナが隔離された理由を報告します(Roadmap 010)
宣言
THPDFObjStmQuarantineReason= (osqrNotAStream, osqrBadDictionary,
osqrBadHeader, osqrBadStreamSize, osqrDecryptFailed,
osqrDecompressFailed, osqrFirstOutOfRange, osqrHeaderUnparsable,
osqrContainerException, osqrMemberUnparsable);
ユニット
HPDFDoc
値
| 値 | 意味 |
|---|---|
osqrNotAStream | コンテナオブジェクトが存在しないか、ストリームオブジェクトではありません |
osqrBadDictionary | コンテナのディクショナリまたはストリームペイロードがありません |
osqrBadHeader | /N または /First エントリが不正です(非正、ゼロ、または不自然に大きい) |
osqrBadStreamSize | コンテナストリームのサイズが空か、サポートされる最大値を超えています |
osqrDecryptFailed | 暗号化されたコンテナを復号できませんでした(暗号化フィルタが利用不可、または AES/RC4 復号の失敗) |
osqrDecompressFailed | フィルタデコードがコンテナについて出力を何も生みませんでした |
osqrFirstOutOfRange | /First オフセットがデコード済みコンテナバイトの範囲外です |
osqrHeaderUnparsable | デコード済みヘッダからオブジェクト番号とオフセットのペアが 1 つも得られませんでした |
osqrContainerException | コンテナのデコード中に予期しない例外が発生したため、パスを中断させる代わりに隔離されました |
osqrMemberUnparsable | コンテナ自体は正常にデコードできたものの、1 つのメンバーボディの解析に失敗しました。兄弟メンバーは独立したままです |
使用上の注意
- この理由は、隔離済みオブジェクトストリーム情報 API が返す THPDFObjStmQuarantineInfo レコードの Reason フィールドに、診断文字列や未解決のまま残ったメンバーオブジェクト番号とともに現れます
- 隔離は障害の分離です。独立したコンテナはロードを続け、影響を受けたメンバーだけが失われたものとして報告されます
- コンテナレベルの理由はリカバリのリトライをまたいでコンテナごとに重複排除されます。osqrMemberUnparsable のレコードはメンバーレベルで、影響を受けたメンバーごとに繰り返し現れます