在Wix中有条件地安装组件

时间:2014-09-10 12:26:58

标签: wix custom-component

我们的安装程序有一个Wix项目。是否可以检查文件是否存在? 基本上,对于我们的一些配置文件,我们希望传入安装程序脚本中实际不存在的文件路径,但是在命令行上将文件路径传递给公共属性。 在这种情况下,我们希望配置文件组件在安装期间使用传入的配置文件而不是默认配置文件。

这可能吗?

我尝试过这样的事情:

<?if FileExist([PORTALCONFIGPATH])?>
      <File Id='webConfig' Name='web.config' DiskId='1' Source='[PORTALCONFIGPATH]' KeyPath='yes'/>
<?else?>
      <File Id='webConfig' Name='web.config' DiskId='1' Source='web.config' KeyPath='yes'/>             
<?endif?>

要检查传入的文件名是否存在,请安装传入的文件,否则使用默认文件。

1 个答案:

答案 0 :(得分:0)

WiX FileSearchDirectorySearchConditionCopyFile元素是您要使用的内容。创建属性,在执行msi时,如果设置了属性,则DirectorySearch和FileSearch元素将查找该属性的路径,设置另一个属性(例如MYFILEEXISTS),然后如果MYFILEEXISTS CopyFile将与路径一起运行。