![](/img/trans.png)
[英]How do you save an open document using Microsoft.Office.Interop.Excel.Application in C#?
[英]How do you open encrypted OOXML document in C#?
我想打開加密的OOXML文件,這些文件作為流存儲在復合OLE文件中。 微軟有一個面向OOXML的API( OOXML Format SDK 2.0 ,但是似乎缺乏一種處理加密的OOXML文檔的方法。因此,這分為兩個問題。
如何在C#中打開復合OLE文檔? 我發現了一個非常相似的問題( 閱讀C#中的復合文檔 ),但是我希望我可能錯過了一種更干凈,更通用的方法。
是否有高級方法可以解密OLE文檔中的EncryptedPackage
流? 我找到的兩個最佳參考是“ 解密Office文檔”和“ MS-OFFCRYPTO示例” 。 “解密Office文檔”似乎已成功解密,但是它依賴於外部DLL( Lyquidity.OleStorage.dll )打開OLE文檔,但對我不起作用。 “ MS-OFFCRYPTO示例”在C#中具有解密流的示例,但使用C ++示例來獲取流。 這兩個引用看起來都可以正常工作,但是有沒有做同樣事情的高級API?
簡短的回答:沒有更高級別的API。 長答案: MS-OFFCRYPTO示例是如何解密它的最佳示例,但是您必須使用一個庫(或自己創建)與OLE文檔進行交互。 有許多用於OLE結構化存儲的庫,例如OpenMCDF和GemBox Software的庫
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.