在桌面Office应用程序内部运行时,是否可以使用VSTO加载项和基于JS / HTML的任务窗格应用程序相互通信?
目标是使用VSTO桥接x平台Office API中尚未出现(或永远不会出现)的功能。
答案 0 :(得分:1)
正如Evgene所说,没有开箱即用的功能(尽管这个话题肯定出现在内部讨论中,所以我很想听听你的情况,特别是你如何处理VSTO-only-on-the-desktop case。)
如果你现在想尝试这个,你可能仍然需要一些创造性的解决方案。想象一下,你有一个带有命名范围的隐藏表,你可以将其用作VSTO和任务窗口应用之间的通信缓冲区。
对于VSTO => JS通信:让任务窗口在命名范围内创建绑定,然后使用绑定数据更改事件来侦听来自VSTO加载项的传入消息。
对于JS => VSTO通信:让JS将数据设置为绑定(如上所述,它是在命名范围内创建的)。在VSTO端,监听数据更改事件,将传入范围与命名范围的范围相交,如果交集不为空,则获取文本以获取传入消息。
如果你最终尝试了这种方法,请保持帖子的发布方式 - 我很乐意听到。
~Michael Zlatkovsky(Office扩展团队的开发人员)
答案 1 :(得分:-2)
需要承认,基于VSTO的加载项只能在Windows和桌面客户端上运行。此类方案不支持其他平台。
无论如何,VSTO和Mail Apps(JS / HTML)都没有为开箱即用提供任何东西。