我有以下财产:
<Property Id="UPDATEDB">1</Property>@H_301_3@UI中的一个复选框绑定到该属性:
<Control Id="updateDatabase" Type="CheckBox" CheckBoxValue="1" Height="15" Width="95" X="20" Y="74" Text="Update Database" Property="UPDATEDB" />@H_301_3@以及根据此属性的值执行某项操作的自定义操作
<CustomAction Id="RunDbMigration" Directory="INSTALLDIR" Return="check" ExeCommand='[DBMIGRATIONDIR]\DbMigration.exe' /> <InstallExecuteSequence> <Custom Action="RunDbMigration" After="InstallFinalize">UPDATEDB=1 AND NOT Installed</Custom> </InstallExecuteSequence>@H_301_3@如果我尝试从命令行为UPDATEDB传递值0:
msiexec /i "Setup.msi" /l* UPDATEDB=0@H_301_3@要么
msiexec /i "Setup.msi" /l* UPDATEDB="0"@H_301_3@无论如何都要检查复选框的值.也就是说,传入的0似乎得到了尊重,RunDbMigration动作没有运行…… @H_301_3@这里发生了什么?为什么这样的火箭科学?