MSI如何提示用户配置MSM的参数?

时间:2009-11-18 20:16:47

标签: parameters windows-installer merge-module

我有一个应用程序 BACK ,它打包在一个合并模块中,并与另一个应用程序 FRONT 一起安装,该应用程序位于主MSI包中。这些是通过MS VisStudio 2008中的项目创建的。

用户可以使用一小组参数通过MSI的UI配置 FRONT 应用程序。我需要至少访问其中一个参数(在本例中为URL),以便在运行时 BACK 可以访问 FRONT

  • 在MS Visual Studio中,我无法查看MSM项目的UI以提示用户。
  • 在MSI的UI中设置的参数显然没有传递给MSM - 一个类 在MSM(派生自 System.Configuration.Install.Installer )中使用,但其 安装函数称为空 IDictionary

我搜索了谷歌,MSDN,SO和其他人,但是甚至没有找到任何人(使用VisStudio)来解决这个问题。 MSDN似乎有很多关于抽象的信息,没有任何工具参考,它让我认为它适用于安装工具而不是安装包的开发人员。

1 个答案:

答案 0 :(得分:2)

您可以使用installer properties。 MSI可以使用以下语法访问MSM属性:

<property name>.<module GUID>

因此,如果您在MSM中使用自定义属性,例如MY_URL,则可以使用以下命令在MSI中设置:

MY_URL.{B5C20B75-2B3F-4323-9584-C426E8AEE3BF}

其中“{B5C20B75-2B3F-4323-9584-C426E8AEE3BF}”表示合并模块GUID。