无人参与的安装wix读命令行参数传递给msiexec

Mar*_*ark 2 windows-installer wix

我正在使用wix编写安装程序.对于使用msiexec进行静默安装,我想从命令行中提供一些我想要设置为wix属性的参数.

我用这些属性来启用/禁用一些功能.

任何人都可以告诉我如何读取传递给msiexec的命令行属性.使用C++ Custom Action,我们使用MsiGetProperty进行读取

非常感谢..

最诚挚的问候,马克

Dav*_*tin 7

要从命令行使该属性可用,您应该使用大写名称来定义它.我经常使用启动条件来检查命令行上传递的属性:

<Property Id="PROPNAME" Admin="yes" />
<Condition Message="Public Property PROPNAME not passed">Installed or PROPNAME</Condition>
Run Code Online (Sandbox Code Playgroud)

Installed变量仅在安装而不是卸载时检查属性值.

msiexec的命令行如下所示:

msiexec -i <msiname.msi> PROPNAME="PROPVALUE"
Run Code Online (Sandbox Code Playgroud)


Chr*_*ter 6

您还应该查看ADDLOCAL属性.您可以使用命令行简化您的问题,例如:

msiexec /i product.msi ADDLOCAL=FEATURE1,FEATURE2,FEATURE4,FEATURE5
Run Code Online (Sandbox Code Playgroud)