英文:
How to pass a PROPERTY=VALUE from Wix boostraper to setup?
问题
我正在尝试创建一个包含接受自定义属性 ENABLE_TOGGLE
的 WiX 安装程序的 WiX 引导程序,但是当从命令提示符调用引导程序时,
boostrapper.exe /q ENABLE_TOGGLE=1
它没有效果,而调用安装程序
setup.msi /q ENABLE_TOGGLE=1
则按预期工作。
如果我在 <MsiPackage >...</MsiPackage>
内部指定 <MsiProperty Name="ENABLE_TOGGLE" Value="1" />
,它可以工作,但我希望在安装时指定这个值。
我尝试过将其引用为 [ENABLE_TOGGLE]
,但似乎不起作用。
我正在使用 WiX 3.11.2。
英文:
I'm trying to create a WiX boostrapper that includes a WiX setup that accepts a custom property ENABLE_TOGGLE
, but when calling the bootstrapper from the command prompt as
boostrapper.exe /q ENABLE_TOGGLE=1
it has no effect, while calling the setup
setup.msi /q ENABLE_TOGGLE=1
works as expected.
If I specifiy <MsiProperty Name="ENABLE_TOGGLE" Value="1" />
inside <MsiPackage >...</MsiPackage>
it works, but I would like this value to be specified at install time.
I've tried to reference it as [ENABLE_TOGGLE]
but that doesn't seem to work.
I'm using WIX 3.11.2
答案1
得分: 2
如果您正在使用WixStdBA,您可以使用Overridable="yes"
标记Variable
,以便用户可以在命令行设置该变量。
https://wixtoolset.org/docs/v3/xsd/wix/variable/
然后,MsiProperty
将按您的期望与Value=[Variable]
一起工作。
英文:
If you're using WixStdBA, you can mark a Variable
with Overridable="yes"
to let the user set the variable at the command line.
https://wixtoolset.org/docs/v3/xsd/wix/variable/
Then MsiProperty
will work as you expect with Value=[Variable]
.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论