【问题标题】:Wix FileSearch is not returning true for an existing fileWix FileSearch 没有为现有文件返回 true
【发布时间】:2016-01-13 10:20:50
【问题描述】:

我在我的 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

我做错了吗?

【问题讨论】:

    标签: windows wix


    【解决方案1】:

    不幸的是,以这种方式使用运行时环境变量并不那么容易。您首先需要使用环境变量设置一个 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"/>
    

    【讨论】:

      猜你喜欢
      • 2023-03-08
      • 2013-05-19
      • 1970-01-01
      • 2011-10-05
      • 2015-05-05
      • 2017-04-30
      • 1970-01-01
      • 2011-01-28
      • 1970-01-01
      相关资源
      最近更新 更多