Wix3.5:未定义的预处理器变量'$(var.Platform)'

时间:2012-05-04 11:12:27

标签: wix preprocessor wix3.5

我正在尝试为x64系统编写MSI安装程序

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">

  <?if $(var.Platform)=x64 ?>
  <?define win64Flag = "yes" ?>
  <?else ?>
  <?define win64Flag = "no" ?>
  <?endif ?>

</Wix>

这应该是使用内置变量Platform的一种非常简单的方法,但它失败如下:

D:\>candle m.wxs
Microsoft (R) Windows Installer Xml Compiler version 3.5.2519.0
Copyright (C) Microsoft Corporation. All rights reserved.

m.wxs
D:\m.wxs(4) : error CNDL0150 : Undefined preprocessor variable '$(var.Platform)'.

所以这意味着这个“平台”不是内置变量?或者我做错了什么?

1 个答案:

答案 0 :(得分:2)

不,它没有内置。你可能不需要它。有关Candle如何为您处理大部分细节的信息,请参阅http://www.joyofsetup.com/2010/05/14/working-hard-or-hardly-working/