如何在msi安装程序中选择预定义的安装目录

时间:2013-10-16 06:18:59

标签: c# .net windows-installer installation

我为我的应用程序使用Visual Studio Setup ProjectInstaller Project创建了msi-setup,它运行正常。我的应用程序已成功安装并且可以正确执行。

现在我想在Setup Project中添加一个对话框,用户应该可以在其中选择安装应用程序的目录(位置)。我知道有一个单独的对话框用于选择字典,但用户不应该有权在任何他/她想要的地方安装应用程序。

所以我想到了对话框RadioButtons,用户可以在其中选择一些预定义的目录。

有办法解决这个问题吗? 例如。获取安装程序项目中选择按钮的值并在那里处理它?或者将DefaultLocation的{​​{1}}设置为单选按钮的值。

1 个答案:

答案 0 :(得分:0)

你自己找到了答案。 Windows Installer 通过TARGETDIR属性了解应用程序文件夹。请注意,某些安装程序使用另一个属性作为安装目录(覆盖 TARGETDIR )。

要从无线电控制更改TARGETDIR文件夹,您需要做两件事:

  • 确保 RadioButtonGroup 具有属性TARGETDIR
  • 下一步按钮上,为TARGETDIR设置 SetTargetPath 控件事件

您还应该拥有您所在位置的默认值。这可以通过在 InstallUISequence InstallExecuteSequence CostInitialize 之前执行的自定义操作类型 51 来解决。< / p>

干杯