VSTO Addin for Outlook 通过 WIX 安装

VSTO Addin for Outlook install via WIX

我的目标是为本地 PC 上的所有用户而不是当前用户安装 VSTO Outlook 插件。我使用了 Visual Studio 中的 Publish 方法,结果是 exe 文件,这意味着 ClickOnce 方法。 (不能为所有人安装)

好吧,我开始研究我发现 Wix

我的第一个问题是,当我从我的 VSTO 插件从 Visual Studio 创建构建时,我有 2 个目录和 20 个文件,是否可以在 WIX 目录参考中的 product.wxs 文件中分配目录?

第二个问题,当文件和目录“安装”到目标目录时,(例如程序文件)如何将VSTO分配给Outlook?是因为要将 VSTO 添加到注册表 HKLM ?

我在问我是否离我的目标更近了

不确定我是否理解您的第一个问题,但无论如何我都会尽力回答。您必须带到用户 PC 上的唯一文件是位于 bin/Release 文件夹下的文件,扩展名为 *.pdb 的文件除外。有两种方法可以将它们添加到安装中:

  • 第一种方法是手动添加每个要包含在安装中的文件作为您 Product.wxs 中的文件组件。你可以在他们的官方 tutorial.
  • 中找到一个很好的例子
  • 第二种方法是利用 Wix 工具集中的 harvest tool (Heat)。此工具可以在构建过程中自动生成组件列表。

关于你的第二个问题。要让 Word 或 Outlook 看到您的附加组件,您必须在安装期间在 Windows 注册表中创建一个条目。例如,对于 Microsoft Word,您必须使用以下条目创建一个新键 HKLM\Software\Microsoft\Office\Word\Addins\MySuperAddOn

Entry Type Value
Description REG_SZ Required. A brief description of the VSTO Add-in. This description is displayed when the user selects the VSTO Add-in in the Add-Ins pane of the Options dialog box in the Microsoft Office application.
FriendlyName REG_SZ Required. A descriptive name of the VSTO Add-in that is displayed in the COM Add-Ins dialog box in the Microsoft Office application. The default value is the VSTO Add-in ID.
LoadBehavior REG_DWORD Required. A value that specifies when the application attempts to load the VSTO Add-in and the current state of the VSTO Add-in (loaded or unloaded). By default, this entry is set to 3, which specifies that the VSTO Add-in is loaded at startup. For more information, see LoadBehavior values. Note: If a user disables the VSTO Add-in, that action modifies LoadBehavior value in the HKEY_CURRENT_USER registry hive. For each user, the value of the LoadBehavior value in the HKEY_CURRENT_USER hive overrides the default LoadBehavior defined in the HKEY_LOCAL_MACHINE hive.
Manifest REG_SZ Required. The full path of the deployment manifest for the VSTO Add-in. The path can be a location on the local computer, a network share (UNC), or a Web server (HTTP). If you use Windows Installer to deploy the solution, you must add the prefix file:/// to the manifest path. You must also append the string |vstolocal (that is, the pipe character | followed by vstolocal) to the end of this path. This ensures that your solution is loaded from the installation folder, rather than the ClickOnce cache. For more information, see Deploy an Office solution by using Windows Installer. Note: When you build a VSTO Add-in on the development computer, Visual Studio automatically appends the

您可能需要阅读 official documentation 以了解更多详细信息。

Wix 工具集也允许这样做。您必须在 Product.wxs.

中声明 RegistryKey 组件