我想打开加密的 OOXML 文件,这些文件作为流存储在复合 OLE 文件中。Microsoft 有一个用于 OOXML 的 API(OOXML Format SDK 2.0,但它似乎缺乏一种操作加密 OOXML 文档的方法。因此,这分为两个问题。
如何在 C# 中打开复合 OLE 文档?我发现了这个非常相似的问题,(阅读 C# 中的复合文档),但我希望可能有一种我错过的更清洁、更通用的方法。
是否有一种高级方法来解密
EncryptedPackage
OLE 文档中的流?我发现的两个最佳参考是Decrypting Office Documents和MS-OFFCRYPTO Examples。“解密 Office 文档”似乎解密成功,但它依赖外部 DLL ( Lyquidity.OleStorage.dll ) 来打开 OLE 文档并且对我不起作用。“MS-OFFCRYPTO 示例”在 C# 中有一个示例来解密流,但使用 C++ 示例来获取流。这两个参考看起来都有效,但是否有更高级别的 API 可以做同样的事情?