从2003年开始,我正在开发一个必须与所有Word版本兼容的Word插件。功能所需的要求之一是能够在文档中嵌入任意长度的自定义数据。Word.Document.CustomDocumentProperties适用于所有必需的版本,但不幸的是限制了数据的大小。在研究过程中,我还发现Word.Document.CustomXML可能是我需要的解决方案。然而,我无法确定该属性是否适用于Word 2003。此外,必须可以对自定义数据执行CRUD操作,但据我所见,CustomXML部分只提供了添加和检索数据的方法。我应如何处理这一要求?
发布于 2011-05-09 22:56:35
关于CustomXML,请记住微软去年遇到的专利问题,这导致Office 2007中的功能被删除(至少在美国是这样)。见本博客提供详细信息。我记得删除仅限于美国版,对于Office 2010 MS使用了另一种方法。但这意味着您依赖于客户Office安装的修补程序状态。
您可以查看Word 文档变量而不是文档属性。它们从Word 95开始就得到了支持,并且可以看作是附加在文档中的INI文件。我使用一个只保存在一个文档变量中的XML结构(如果需要的话,您也可以加密XML内容),取得了很好的经验。
但是,您可以只读取或写入文档变量(或删除它们)。通过Word对象模型本身无法保证CRUD操作;负责的是您的应用程序。
请记住,(如果您的文档发出并返回电子邮件附件),您的一些客户可能会使用一些元数据删除工具;我已经在法律市场上看到了很多使用它的情况。这些工具可以删除文档变量和Office文档属性。使用Office文档(Word、Excel),不可能100%地保证您的数据将保留在文档中。
https://stackoverflow.com/questions/5941666
复制相似问题