1

嗨,我继承了一个 word 功能区项目。我需要创建一个安装程序,但首先我想手动安装它(即复制文件并在命令提示符下运行命令)。

问题是我不知道如何将功能区部署到另一台 PC 上。我所知道的是,我在 VS 中创建了一个 word 功能区,当我运行它时,word 打开并出现了功能区。

我需要能够将它部署在 word 2007 之后的 32 位和 64 位(如果可用)上。

谢谢

4

2 回答 2

2

我建议创建一个MSI来部署您的加载项,这是 Windows 中最常用的分发系统,内置支持静默安装、修复、回滚和卸载。因此,如果需要,您可以轻松地让您的客户通过Active Directory/GPO 或 SCCM部署它。

使用 MSI 部署插件时,您基本上将插件资源/文件复制到所需的安装文件夹中,并创建Patrick 提到的注册表项。

我建议为每个用户安装插件,即安装APPDATA文件夹下的文件和HKCU下的注册表项。安装每台机器将需要您的用户的管理员权限(也许并非所有人都拥有该权限),您还必须做更多工作才能查看在HKLM下写入注册表项的位置,因为这里您有专用的密钥“ Wow6432Node ”对于 32 位应用程序,因此根据 WINdows 和 Office 的版本,您需要查看是否需要在“ HKLM\Software\Office... ”下或“ HKLM\Sofware\Wow6432Node\Office ...”下写入”。当您在 HKCU 下为每个用户安装时,此问题在HKCU\Software下消失了没有注册表重定向,因此该扩展将适用于所有 32 位和 64 位机器/Office 风格。此外,为每个用户安装扩展程序将自动让您的用户可以在同一台机器的不同帐户上安装不同版本的插件,如果需要的话。

很重要的一点,你的 MSI 中应该有 Word 2007 的启动条件,这样没有安装的用户也不能安装你的插件。所有工具创作工具都应该能够很容易地设置这个启动条件。

此外,您应该使用代码签名证书对您的 MSI 和插件进行数字签名(从经过认证的供应商处获得,例如 VeriSign、Thawtee 等......)。

要创建 MSI 包,您有多种选择,但基本上您可以使用任何能够创建 MSI 的工具,只要您正确创建注册表项即可。例如, Advanced Installer(我使用的工具)有一个很好的向导,它只询问您的目标 Office 版本,询问您要安装的文件,它会自动为您处理其余的。您可以将其与 VS 集成,因此如果需要,您可以直接从 VS 解决方案构建 MSI。至于启动条件,只需在 Advanced Installer GUI 中单击即可,无需编写任何脚本。

于 2014-01-25T19:40:04.157 回答
1

您可以通过在解决方案资源管理器中单击 Visual Studio 项目上的发布或编辑注册表来创建ClickOnce 安装程序

于 2014-01-24T06:51:52.253 回答