我正在编写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。那么,有什么方法可以使我完成这项工作吗?还是我只是错过了一些非常简单的事情?