使用 Visual Studio 2010 构建 x64 WIX 项目?

发布于 2024-10-04 01:33:07 字数 431 浏览 0 评论 0原文

我无法让 VS2010 为 x64 构建 WIX 项目 - 这意味着我可以添加平台,但它不会构建它。

重现步骤:

  1. 新建项目> Windows 安装程序 XML >设置项目(使用默认名称、位置等)
  2. Build >配置管理器>主动解决方案平台>
  3. 新平台:x64
  4. 从以下位置复制设置:x86
  5. 创建新项目平台:选中(我也尝试取消选中,但没有更好)
  6. 确定关闭“新建解决方案平台”对话框
  7. 返回配置管理器,选择 x64 作为平台
  8. 关闭配置管理器
  9. 重新打开配置管理器

结果:平台已恢复为 x86。

预期结果:平台仍设置为 x64。

我错过了什么吗?我不可能是唯一遇到这种情况的人吧?

I can't get VS2010 to build a WIX project for x64 - meaning I can add the platform, but it doesn't build it.

Steps to reproduce:

  1. New Project > Windows Installer XML > Setup Project (Use default name, location, etc)
  2. Build > Configuration Manager > Active Solution Platform >
  3. New Platform: x64
  4. Copy settings from: x86
  5. Create new project platforms: Checked (I tried unchecked as well, no better)
  6. OK to close the New Solution Platform dialog
  7. Back in Configuration Manager, select x64 for the Platform
  8. Close the Configuration Manager
  9. Re-open the Configuration Manager

Results: Platform has reverted to x86.

Expected Results: Platform is still set to x64.

Am I missing something? I can't be the only person running into this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

永不分离 2024-10-11 01:33:07

WiX 绝对支持 x64!我遇到了同样的问题,这似乎是一个疯狂的问题,因为我也让它适用于 x86 和 x64 的另一个解决方案。因此,我比较了两个解决方案文件,并找出了无法正常工作的文件出了什么问题。

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection

这是一个生成的非工作的。为了使其工作,我替换了“=”后面的前四个字符串,并进行了一些 x86 和 x64 构建。这对我有用。

这是相同但有效的代码:

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection

希望也适合您

WiX definitely supports x64! I got the same issue and that seems to be somehow a crazy issue as I also got it working for another solution for x86 and x64. So I compared the two solution files and figured out what was going wrong with the one not working.

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection

This is a generated nonworking one. To make it work, I replaced the first four strings behind the "=" and played a bit with doing an x86 and x64 build. That worked for me.

Here is the same but working code:

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection

Hope that works for you as well

一袭白衣梦中忆 2024-10-11 01:33:07

几分钟前我在 VS2010 中也遇到了同样的问题。我通过这样做解决了问题:

  1. 关闭 Visual Studio(可能是所有实例)
  2. 对于 wix 项目来说,x64 突然消失了....
  3. 为 wix 项目创建一个新的 x64,而不从其他项目复制,然后取消选中“创建解决方案配置”复选框
  4. 保存解决方案并再次关闭VS。
  5. 再次打开您的项目
  6. 再次为 wix 项目选择 x64。现在 x64 将保留...

奇怪但它可以工作:-)

I had the same problem just a few minutes ago in VS2010. I solved the problem by doing this:

  1. Close Visual Studio (maybe al instances)
  2. The x64 is suddenly gone for the wix projects....
  3. Create for the wix projects a new x64 without copy from other and uncheck the create solution configuration checkbox
  4. Save solution and close VS again.
  5. Open your project again
  6. Select the x64 again for the wix project. Now the x64 will stay...

Strange but it works :-)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文