簡體   English   中英

你如何 package 一個 VSTO Word 插件部署到 64 位 Windows 10 使用 WIX 運行 Microsoft Office 64 位的機器?

[英]How do you package a VSTO Word addin for deployment to a 64-bit Windows 10 machine running Microsoft Office 64 bit using WIX?

問題

我無法讓 64 位Word加載(或以任何方式確認存在)否則工作的Word VSTO add-in

討論

我有一個工作Word VSTO add-in ,我使用 Visual Studio 2017 在運行 Microsoft Office 32 位的 64 位 Windows 7 機器上開發。 我使用WIX安裝程序來部署加載項。 我成功地將插件部署到運行 32 位 Office 的 Windows 7 64 位“主”金盤,即,任何從主金盤調出虛擬桌面的用戶都可以使用該插件。 有關詳細信息,請參閱此處Nova Sys Eng SO 答案。

現在,我的組織正在將運行 32 位 Office 的 Win 7 64 位 VDI 替換為運行 64 位 Office 的 Win 10 64 位 VDI。 為此,我創建了一台 64 位 Win 10 開發機器,安裝了 Office 64 位、Visual Studio 2019、WIX Votive2019 擴展和 WIX 工具集。 在這台開發機器上,我構建了插件的發布版本,並在這台開發機器上安裝了 MSI。 當我在這台開發機器上啟動Word時,它運行良好。

接下來,我將開發機上搭建的微星攜帶到64位Win 10主金盤機上(再次運行Office 64位)並成功安裝插件(即WIX安裝程序完成無錯誤)。 我還在64位Win 10主金盤機上安裝了VS 2010 Tools for Office Runtime(10.0.60828 2018年發布)。 就像在64位Win 7大師金盤(Office 32位)上一樣,插件安裝在64位Win 10大師金盤機上

C:\Program Files (x86)\FooAddIn

並且注冊表設置是

[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 選項 -> 加載項時,加載項根本不存在。 當我 select COM 加載項 -> GO 時,ZD47C174ED277BDF06CFCADD-ins 對話框也未顯示。

還有一項:

在開發機器上,Build Config Manager 如下所示,即 WIX 安裝程序(FooAddInSetup)的平台設置為 x86,沒有其他選項可用。

在此處輸入圖像描述

為什么 Word 不承認我的加載項的存在?

加載項安裝在Program Files (x86)中是一個問題嗎?

WIX安裝程序的平台是x86是一個問題嗎?

我偶然發現Addins for Office 程序可能在 \Wow6432Node 下注冊 幫助我的部分是:

在此處輸入圖像描述

即使我在具有 64 位辦公室的 64 位計算機上構建了加載項,WIX 安裝程序也會設置,以便當我在 Win 10 64 位金磁盤機(具有 64 位Office),它將注冊設置添加到 HKLM\Software\Wow6432 節點,就好像機器有 32 位辦公室一樣。

我在 HKLM\Software\Microsoft 下手動創建了相同的 reg 鍵設置,並且加載項加載得很好。

所以,我必須弄清楚我需要對 WIX 配置設置做什么,以使其適合具有 64 位辦公室的機器。

順便說一句, VSTO 加載項的 Microsoft 頁面注冊表項似乎有倒退:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM