首页 > 解决方案 > 指定 TARGETDIR 的 Wix 安装程序

问题描述

我正在编写一个 Wix 安装程序,其中一个要求是用户可以指定一个目标目录。现在,我对 Wix 非常不熟悉,所以我想弄清楚它是如何工作的。通常,指定安装目录的用户似乎相当简单,所以这就是我所做的:

<Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
        <Directory Id="PlatformProgramFilesFolder">
            <Directory Id="foo" Name ="foo">
                <Directory Id="INSTALLFOLDER" Name="bar" />
            </Directory>
        </Directory>
    </Directory>
</Fragment>

因此,如果用户在命令行上指定了一个 INSTALLFOLDER,它将使用它而不是默认安装路径。但是,他们特别希望使用名称TARGETDIR作为指定目标安装目录的变量,如下所示:

msiexec /i foobar.msi TARGETDIR=C:\foo\bar\

现在 TARGETDIR 是预定义的,因此您不能仅将其用作 INSTALLFOLDER 的替代品。那么有没有办法让我完成这项工作,或者我只是错过了一些非常简单的东西?

标签: wixwindows-installer

解决方案


推荐阅读