如何为我的不同版本的Office Addin制作单个安装程序

时间:2009-07-31 03:58:56

标签: deployment plugins ms-office installation vsto

任何人都知道如何为office 2003/2007插件制作一个安装程序Common。 安装程序应自动选择适当的Office版本(2003/2007),具体取决于安装的Office。

我正在使用VS2008,可扩展性 - 共享插件,用于我的Office插件。我有2003年和2007年的2个项目,我想为两者制作一个Common Installer。

以前是否有人做过类似的事情?

我需要一个部署(msi)软件包,以便用户无需选择需要使用的版本。

4 个答案:

答案 0 :(得分:1)

我过去使用过这个bat文件命令来安装正确的PIA,如果有“HKLM \ SOFTWARE \ Microsoft \ office \ 12.0 \ Excel”意味着安装了正确的PIA,可能会发现它很有用。

@Echo off
:BEGIN
CLS
reg query "HKLM\SOFTWARE\Microsoft\office\12.0\Excel" || GOTO INSTALL11
REM ***************  INSTALLING OFFICE 12 PIA *****************************
%programfiles%\{InstallFolder}\O2007PIA.msi /passive

exit
:INSTALL11
reg query "HKLM\SOFTWARE\Microsoft\office\11.0\Excel" || GOTO INSTALLNOTHING
REM ***************  INSTALLING OFFICE 11 PIA *****************************
%programfiles%\{InstallFolder}\O2003PIA.msi /passive
exit
:INSTALLNOTHING
REM ... Clean up left out for brevity

也许你可以编写一个同样的msi脚本。

答案 1 :(得分:0)

下面的链接说明了如何判断是否安装了Office XP。我确信所有其他最新版本的Microsoft Office都存在类似的页面。您甚至可以按特定版本的Office XP进行过滤。

http://office.microsoft.com/en-us/orkXP/HA011364611033.aspx

答案 2 :(得分:0)

我使用了“目标最低公分母”策略,如here所述。它对我有用。

答案 3 :(得分:0)

这很容易。

在你的msi中你只需要搜索办公室安装的关键路径。 微软记录了这些关键路径。

Office 2003 Keypath and Default Installation Settings workbooks

还有其他办公室版本的文件。

也许您也可以在检测模式下使用安装程序中的查找相关产品功能。 MSI Upgrade Table

检测到版本后,您只需要在组件/功能

上添加表达式