使用OpenXML打开受保护的Word文档

时间:2015-12-20 11:04:33

标签: c# openxml

我搜索过每一个地方但是,我找不到任何答案。 所有帖子和讨论都是关于创建受保护的帖子,但没有任何内容可以打开它。

我已在c#程序中保护DOCX和DOC文档,并希望使用OpenXML 2.5以编程方式打开它们。

我使用Office interlope打开它们,因为它有密码参数。 但是对于大量的文档编号来说这很慢。

我可以使用OpenXml打开受密码保护的Word文档吗?怎么样?

感谢。

2 个答案:

答案 0 :(得分:2)

受密码保护的文档(使用密码保存的文档)不是Zip包,而是二进制文件。如果你考虑一下,原因很明显:一个Zip文件的XML包是人类可读的 - 不安全。因此,您无法通过Open XML文件格式操作受密码保护的Word文档 - 它根本就不存在。

答案 1 :(得分:0)

有一种方法可以通过取消保护来使用OpenXml释放。 找到了答案Here

WordprocessingDocument doc = WordprocessingDocument.Open(filePaths[i], true);
doc.ExtendedFilePropertiesPart.Properties.DocumentSecurity = new DocumentSecurity("0");
doc.ExtendedFilePropertiesPart.Properties.Save();
DocumentFormat.OpenXml.Wordprocessing.DocumentProtection dp =
doc.MainDocumentPart.DocumentSettingsPart
.Settings.ChildElements.First<DocumentFormat.OpenXml.Wordprocessing.DocumentProtection>();