VSTO Office Interop:在运行时处理Office XML

角色扮演游戏

使用Office的XML文件有时可以是快速处理文档的便捷方法。

即搜索PowerPoint文件的ZIP数据并更改文件中的XML。

我想知道是否有一种方法可以从VSTO加载项中访问和处理文档(PowerPoint或其他)的XML,更改是否可以实时反映在当前打开的文档中?(例如,替换字符串时)。

我正在寻找一种不需要重新打开文档的解决方案。

答案很可能是不可能/不受支持的,因为我在Office Interop API中找不到官方文档。

瓦西尔·奥列申斯基

这应该可以完成工作,但是请记住,即使不需要重新打开文档,文档的全部内容也会重新加载...对于庞大的文档,这会很

例如,我使用Word文档

var wordDocument = app.ActiveDocument;
var openXmlFormattedStr = wordDocument.Content.WordOpenXML;
var manipulatedOpenXmlFormattedStr = .....; // do something with the xml
wordDocument.Content.InsertXML(manipulatedOpenXmlFormattedStr, null);

EDIT 2017-12-15: Power Point和Excel互操作不公开对打开xml格式的直接访问。唯一的方法是将.SaveAs与适当的openxml格式一起使用,然后从文件系统中读取内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

VSTO Office Word加载项开发概述

ILNumerics和Visual Studio Tools for Office(VSTO)

什么是“ Office XML处理程序”?

使用Office JS API的Office VSTO加载项与Office加载项

部署Office 2016 VSTO加载项的最佳实践

将Office VSTO加载项发布到办公商店中

Office升级后,Word VSTO CustomXMLNode.SelectSingleNode失败

VSTO:如何写入 MS-Office 的“最近的文档”

VSTO Word Office互操作性:查找对书签的引用

VSTO工具:Office 2010到2013升级

打开MessageBox时VSTO Office加载项给出异常

VSTO:在数据库中存储 __ComObject (Microsoft.Office.Interop.Word.Table)

在 Word 2016 (Office 365) VSTO 加载项中处理自动保存

在运行时更改xml或布局

VSTO Office Add in c#并非总是显示/触发所有回复

如何打包VSTO Word插件以使用WIX进行部署(到Office 32位)?

寻找与 Office API 的“SearchREsults.item.select”或 VSTO 的“WordEditor”工作方式相同的 Outlook API

Microsoft Office如何不需要.NET 3.5或4.5,而VSTO插件需要它们?

Office VSTO加载项可能的权限问题-HRESULT 0x80004004(E_ABORT)

Visual Studio 2015:为Office 2010及更高版本创建针对.NET 3.5的VSTO项目

Office外接程序开发:使用Napa的VSTO或基于Web的应用程序?

Microsoft Office 365 商业版 - Microsoft Store 版本是否支持 VSTO COM 加载项?

VSTO Microsoft Office Outlook 2013加载项不断禁用功能区

如何在Outlook COM / VSTO和Office JS加载项之间共享用户漫游设置

在VSTO office插件中创建可调用函数-COMAddIns.Object始终为空

是否可以通过Visual Studio(2017)打包(发布,构建)未签名的Microsoft Office插件(VSTO)?

在Office vsto加载项中区分自动保存和常规保存的方法

用于Office的Visual Studio工具(VSTO)-寻找一些用户指南

为所有MS Office组件及其部署创建单个VSTO加载项