1
我有一个WiX msi包含在为x86编译的Burn包中。在微星我有这样的代码:
<?if $(var.Platform) = x64 ?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
<?else ?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
<?endif?>
<!-- directory structures -->
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="$(var.PlatformProgramFilesFolder)">
<Directory Id="INSTALLFOLDER" Name="MyApp">
<Directory Id="MyFolder" Name="MyFolder" />
</Directory>
</Directory>
</Directory>
</Fragment>
<Fragment>
<ComponentGroup Id="MyComponents" Directory="MyFolder">
<Component Id="MyComponent">
<File Id="MyFile" Source="file.dat" Vital="yes" KeyPath="yes"/>
</Component>
</ComponentGroup>
</Fragment>
我期望这将安装到Program Files
文件夹中的64位系统上,但它安装到Program Files (x86)
。这是因为该软件包是以32位运行的吗?如果是这种情况,我该如何测试MSI中的实际操作系统架构?
我遇到了完全相同的问题,我将-arch x64位传递给蜡烛,但仍然无法工作!你是如何解决它的? – Nikhil