【问题标题】:How can an MSI prompt the user for parameters to configure an MSM?MSI 如何提示用户输入参数来配置 MSM?
【发布时间】:2011-09-21 18:43:10
【问题描述】:

我有一个应用程序 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)中使用,但它的 Install 函数调用时带有一个空的IDictionary

我已经搜索了 Google、MSDN、SO 和其他人,但甚至没有找到任何人(使用 VisStudio)提出这个问题。 MSDN 似乎有很多关于抽象的信息,没有提到任何工具,这让我认为它是为安装 tools 而不是安装包的开发人员准备的。

【问题讨论】:

    标签: parameters windows-installer merge-module


    【解决方案1】:

    您可以为此使用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。

    【讨论】:

    • 我不再使用 MSWindows,所以 不在乎,但无论如何感谢可能会帮助下一个人....
    猜你喜欢
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    • 2013-03-28
    • 1970-01-01
    • 2015-01-03
    • 2022-01-23
    • 1970-01-01
    相关资源
    最近更新 更多