我在我的Bootstrapper(Wix 3.9版本)中使用以下FileSearch,即使文件存在,它也总是返回false:
<Wix xmlns="htttp://schemas.microsoft.com/wix/2006/wi"
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"
...
<Fragment>
<util:FileSearch Path="%systemdrive%\SomeFile.txt" Varialbe="FileExists" Result="exists"/>
...
日志文件包含以下行:
文件搜索:*******(一些随机guid),找不到路径:%systemdrive%\ SomeFile.txt
将数字变量“FileExists”设置为值0
我做错了吗?
答案 0 :(得分:2)
不幸的是,以这种方式使用运行时环境变量并不那么容易。首先需要使用环境变量设置WiX属性,然后然后在Path属性中使用该WiX属性。所以像这样(注意单%
前缀):
<SetProperty Id="PROP_SYSTEM_DRIVE" Before="InstallInitialize" Sequence="execute" Value="[%SYSTEMDRIVE]" />
然后您应该可以在FileSearch中使用它:
<util:FileSearch Path="[PROP_SYSTEM_DRIVE]\SomeFile.txt" Variable="FileExists" Result="exists"/>