如何在WiX Icon.SourceFile属性中引用SystemFolder?

时间:2012-06-21 10:34:06

标签: wix wix3.5

长话短说,这不起作用:

<Icon Id="msiexec.ico" SourceFile="[SystemFolder]msiexec.exe"/>

(错误4系统找不到文件'[SystemFolder] msiexec.exe')

这也不起作用:

<Icon Id="msiexec.ico" SourceFile="$(var.SystemFolder)msiexec.exe"/>

错误3未定义的预处理器变量'$(var.SystemFolder)'。

1 个答案:

答案 0 :(得分:2)

如果您将var.SystemFolder作为参数传递给candle.exe,则问题中的第二个示例将有效。

<Icon>元素已映射到Icon MSI table在构建时,它会尝试在SourceFile属性中找到您指定的路径,并将其作为二进制数据流式传输到Icon表的Data列。这意味着,路径应该在构建时知道。但是在您的第一个示例中并非如此 - SystemFolder在安装时已解决。