【问题标题】:Wix Custom Action get current running msi file nameWix 自定义操作获取当前运行的 msi 文件名
【发布时间】:2012-05-18 02:31:42
【问题描述】:

我正在尝试使用 Wix 创建此安装程序。在 InstallFinalize 之前或之后,我需要获取 msi 文件名,然后将该文件名写入安装目录中的配置文件。这有可能吗?

【问题讨论】:

    标签: vbscript wix windows-installer custom-action


    【解决方案1】:

    Windows Installer 属性 OriginalDatabase 具有 MSI 数据库的路径和名称。您必须从路径中解析出名称。然后,WiX 的 util 扩展对configuring XML 文件具有自定义操作。

    【讨论】:

    【解决方案2】:

    您可以像这样访问 VBS 中的属性:

    Dim propValue = Session.Property("OriginalDatabase")
    

    另外,非常重要的是,确保自定义操作是即时的。您无法通过延迟的自定义操作执行上述操作。

    但是,我建议 Win32 DLL 进行自定义操作。在其中你可以使用Windows API 来读取属性值。

    【讨论】:

    • 非常感谢你!我现在明白了。说到 vbs,我就是个菜鸟,甚至不知道如何使用 Windows 全局变量。
    猜你喜欢
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-05
    相关资源
    最近更新 更多