3

OpenXMLSDKv2を使用してプログラムでDOCXファイルを作成しています。ドキュメントの要件の1つは、編集を避けるために保護することです。

これは、次のようなDocumentProtectionオブジェクトを使用して実行されます。

new DocumentProtection
{
    Edit = DocumentProtectionValues.ReadOnly,
    Enforcement = BooleanValues.One,
    CryptographicProviderType = CryptProviderValues.RsaFull,
    CryptographicAlgorithmClass = CryptAlgorithmClassValues.Hash,
    CryptographicAlgorithmType = CryptAlgorithmValues.TypeAny,
    CryptographicAlgorithmSid = 4,
    CryptographicSpinCount = 50000,
    Hash = hash,
    Salt = salt
}

これは、ドキュメントをWord 2007で開くとうまく機能しますが、互換性パックを使用してWord 2003で開くと、パスワードを入力せずに保護を解除できます。

オンラインで読むと、これは「設計上」または少なくとも予想どおりに表示されます。

Word 2003内で表示したときに、パスワード保護をそのまま維持するための賢いアイデアはありますか?

4

0 に答える 0