首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将VSTO Word外接程序打包到使用WIX运行Microsoft 64位的64位Windows 10机器上?

如何将VSTO Word外接程序打包到使用WIX运行Microsoft 64位的64位Windows 10机器上?
EN

Stack Overflow用户
提问于 2019-10-30 15:46:52
回答 1查看 1.7K关注 0票数 0

问题

我无法让64位Word加载(或以任何方式确认存在)一个正常工作的Word VSTO add-in

讨论

我使用VisualStudio2017在运行Microsoft 32位的64位Windows 7计算机上开发了一个工作Word VSTO add-in。我使用WIX安装程序来部署外接程序。我成功地将外接程序部署到运行32位Office的Windows 7 64位“主”黄金磁盘上,也就是说,任何从主金盘中打开虚拟桌面的用户都可以使用外接程序。详见Nova Sys Eng S.O.回答这里

现在,我的组织正在用运行64位Office的Win 10 64位VDI取代运行32位Office的Win 7 64位VDI。为此,我创建了64位Win 10开发机器、安装了Office 64位、Visual 2019、WIX Votive2019扩展和WIX工具集。在这台开发机器上,我构建了外接程序的发布版本,并在这台开发机器上安装了MSI。当我在这台开发机器上启动Word时,它工作得很好。

接下来,我将构建在开发机器上的MSI带到64位Win 10主金盘机(再次运行Office64位),并成功安装了外接程序(即WIX安装程序完好无损地完成)。我还在64位Win 10主金盘机上安装了VS 2010 Office运行时工具(10.0.60828发布2018年)。就像在64位Win 7主金盘(Office 32位)上一样,外接程序安装在64位Win 10主金盘机上。

代码语言:javascript
复制
C:\Program Files (x86)\FooAddIn

注册表设置为

代码语言:javascript
复制
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office\Word\AddIns\FooAddIn]
"FriendlyName"="Foo Add-In"
"Description"="Foo Word Add-In"
"Manifest"="C:\\Program Files (x86)\\FooAddIn\\FooAddIn.vsto|vstolocal"
"LoadBehavior"=dword:00000003

当我在64位Win 10主金盘机上打开Word时,外接程序不会加载,因为实际上,Word并不知道它的存在,即。当我查看Word选项->外接程序时,外接程序根本不存在。当我选择COM外接程序-> GO时,COM外接程序对话框也不会显示外接程序。

还有一个项目:

在开发机器上,看起来如下所示,即WIX程序(FooAddInSetup)的平台被设置为x86,并且没有其他选项可用。

为什么文字不承认我的加载项的存在?

外接程序安装在Program Files (x86)中是一个问题吗?

WIX安装程序的平台是x86是一个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2019-10-30 18:08:39

我偶然发现了Office程序的加载项可以在\Wow6432Node下注册。帮助我的部分是:

尽管我在64位机器上构建了64位office,但WIX安装程序的设置使得当我在Win 10 64位黄金磁盘机(有64位Office)上运行MSI时,它将reg设置添加到HKLM\Software\Wow6432节点,就像机器有32位办公室一样。

I手动在HKLM\Software\Microsoft下创建相同的reg密钥设置,并加载外接程序.

所以,我必须弄清楚我需要对WIX配置设置做些什么,以使它适合于一台有64位office的机器。

顺便说一句,微软页面VSTO外接程序的注册表项似乎把它倒过来了:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58629128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档