这可能是一个天真的问题.我必须手动编辑.WXS文件,使其支持从命令行选择功能.
例如,.WXS文件中有3个功能.
现在,我想从命令行中选择功能.比如,如果我键入"msiexec/i install.msi FEATURE = A",则安装"Feature1"和"Feature2"; 如果我输入"msiexec/i install.msi FEATURE = B",则安装"Feature1"和"Feature3".在这种情况下,"A"映射到要素1和2; "B"映射到要素1和3.
如何在WIX中完成此操作?
已接受的答案已经提到了ADDLOCAL属性,但似乎暗示您只能选择一个功能.实际上,您可以通过逗号分隔多个功能,如下所示:
msiexec /i install.msi ADDLOCAL=Feature1,Feature2
要么
msiexec /i install.msi ADDLOCAL=Feature2,Feature3
另一个提示:你可以通过用orca打开msi来发现这些功能名称.当您想要使用这些技巧来创建安装第三方msi软件包的某些功能的引导程序时,这非常有用.
我会将Feature1,Feature2和Feature3更改为Components,然后声明如下:
然后安装FeatureA或FeatureB
msiexec /i install.msi ADDLOCAL=[FEATUREA | FEATUREB]
有许多属性可以控制功能的安装状态.查看此MSI SDK文档及其链接:http://msdn.microsoft.com/en-us/library/aa367536(VS.85).aspx