如何让WiX安装程序强制VS安装模板?

时间:2011-08-31 12:35:21

标签: visual-studio wix

我有一个WiX安装程序,用于在安装VS 2010模板后更新它们。我正在使用的代码如下:

<CustomAction
      Id="InstallTemplates"
      ExeCommand="&quot;[VISUALSTUDIODIR]devenv.exe&quot; /installvstemplates"
      Directory="VISUALSTUDIODIR"
      Execute="commit"
      Return="check"
      HideTarget="no"
      Impersonate="no"/>


<InstallExecuteSequence>
  <Custom Action="InstallTemplates" Before="InstallFinalize"></Custom>
</InstallExecuteSequence>

在上文中,VISUALSTUDIODIR指的是正确的位置,并正确部署了模板。但是,似乎没有调用该命令,因此实际上没有安装任何模板。我做错了什么?

2 个答案:

答案 0 :(得分:2)

WiX具有内置功能。添加对WixVSExtension.dll的引用并添加以下创作:

<CustomActionRef Id="VS2010InstallVSTemplates" />

答案 1 :(得分:0)

确保VISUALSTUDIODIR是MSI包中的实际目录(它保存在目录表中)。这是此类自定义操作的必要条件。

另外,尝试创建installation log并搜索自定义操作,看看会发生什么。