gpt4 book ai didi

visual-studio-2010 - ProgramFiles64Folder 正在安装到\Program Files (x86)\in WIX Installer

转载 作者:行者123 更新时间:2023-12-01 11:03:27 29 4
gpt4 key购买 nike

我目前有两个 WIX 项目 - 一个用于创建 x86 安装程序,一个用于创建 x64 安装程序。我想将这两个项目合并为一个使用变量来控制程序流程的项目。

我有以下内容:

  <?if $(var.Platform) = x64 ?>
<?define ProductName = "CableSolve Web (64 bit)" ?>
<?define Win64 = "yes" ?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
<?else ?>
<?define ProductName = "CableSolve Web" ?>
<?define Win64 = "no" ?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
<?endif ?>

然后我进入 Visual Studio -> 构建 -> 配置管理器并设置如下:

enter image description here

然后我检查并删除了两个项目的所有组件/目录中的所有“Win64='yes'”和“Win64='no'”参数。

不过,我想知道是否还有比这更多的东西。当我创建我的 x64 安装程序时,我看到它试图安装到 C:\Program Files (x86)... 而不是 C:\Program Files。我假设这意味着代码正在下降到“else”语句——但我不知道有什么方法可以确认这一点。

是否需要设置其他变量以确保正确生成 x64 安装路径?

谢谢

我继承了下面的所有安装程序代码(不包括我目前正在添加的变量)。我添加了 $(var.PlatformProgramFilesFolder) 以及 EnvironmentVariables wxi。 enter image description here

EDIT2:这可能是罪魁祸首,但试图找出其配置为 x86 的原因:

------ 跳过全部重建:项目:CS Web Installer x64,配置:Release x86 ------

最佳答案

两件事:

  1. 您需要在 Package 元素中设置 Platform="x64"属性以获取 64 位 .msi 文件
  2. $(var.Platform) 变量在哪里初始化?如果您打算使用 WIX 内置平台变量,那么您应该根据 WIX 版本使用 $(sys.BUILDARCH) 或 $(sys.PLATFORM)。

关于visual-studio-2010 - ProgramFiles64Folder 正在安装到\Program Files (x86)\in WIX Installer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8568250/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com