【问题标题】:Can I run Visual Studio 2008 x86 on Windows Vista x64?我可以在 Windows Vista x64 上运行 Visual Studio 2008 x86 吗?
【发布时间】:2023-03-09 00:51:01
【问题描述】:

是否可以在 Windows Vista 64 位系统上运行 32 位版本的 Visual Studio 2008 Professional?

  • 是否有任何我需要注意的已知警告?
  • 是否必须安装 x64 版本的 .NET Framework?
  • 在构建面向 x86 的软件时会有什么问题吗?
  • 对于获取 x64 版本的 VS2008 而不是重用当前的 x86 许可证是否有任何(合理的)论据?

非常想获得 x64 Vista 装备以利用更多 RAM :)

【问题讨论】:

  • 运行这个已经快一年了,只有一个小问题。如果您的构建平台是“任何 CPU”,那么拥有 32 位 COM 参考会搞砸事情......网上有很多关于这个的帖子。除此之外,一切都很顺利。

标签: visual-studio-2008 compatibility vista64


【解决方案1】:

没有 x64 版本的 Visual Studio 2008。我在 Vista x64 Ultimate 上运行标准的 32 位版本,它运行良好。我真的没有遇到任何日常问题。你只需安装它就可以了。

【讨论】:

  • +1。请记住,使用“任何 CPU”和您不拥有的 x86 依赖项编译您的应用程序会带来痛苦。
  • 确实如此。我曾经遇到过一个问题,即 32 位 Web 应用程序和 64 位 WinForms 应用程序无法在 x64 服务器上读取和写入相同的注册表值。我最终将 64 位 WinForms 应用程序重新编译为 32 以解决问题。
  • 好点。注册表操作也变得有点复杂。
  • 我们将毫无例外地开发针对在 x86 上运行的代码,但我们希望使用 x64 机器来这样做,以利用诸如增加 RAM 可用性(mm 8GB 的​​ RAM,好吃)
【解决方案2】:

我现在在 x64 上使用 VS2008。这让我可以使用完整的 4GB RAM。它有效,但有一些特殊情况需要注意:

  • x64 应用程序的调试是通过从 32 位子系统到 64 位子系统的远程调试来完成的。

  • 托管 (.NET) 应用默认标记为“任何平台”,这意味着它们在 x64 操作系统上以 64 位运行。这意味着默认情况下托管调试是远程的。

  • 远程调试时没有 Edit-and-Continue,因此在 x64 操作系统上没有用于 .NET 的 E&C,除非 you mark your app as 32-bit-only。同样,如果您制作原生 64 位应用程序,则无法对其进行 E&C。

  • 远程调试时没有混合(托管 + 本机),因此您无法同时调试 x64 应用的托管和本机部分。

【讨论】:

    【解决方案3】:
    • 我不知道。我同时使用 Visual Studio 2008 Professional 和 Team System,它们似乎都可以在 x64 上正常工作。
    • 是的。
    • 没有。
    • 我认为没有 64 位版本的 VS 2008。

    总的来说,对我来说一帆风顺,所以我认为你可以直接加入。

    【讨论】:

      【解决方案4】:

      【讨论】:

        【解决方案5】:

        我的印象是 64 位窗口的设计使得完全存在于 UserLand 中的 32 位程序“正常工作”。需要内核模式访问的设备驱动程序等程序可能需要 64 位特定端口。

        我不知道这有任何明显的例外,但我相信如果你足够努力的话,你可以找到一些。所以除了移动设备模拟器之外,Visual Studio 应该没问题。

        【讨论】:

        • 可能的例外是它仍然依赖于某个地方的 16 位 DLL。
        【解决方案6】:

        我有 VS 2005 的 CD,SP1 让我可以在我的 vista 上执行 x64。 VS2008 必须相同。

        可以肯定的是,一旦安装,请检查编译器配置文件,看看您是否可以在 X86 和 X64 中构建。如果是的话(就像我在我的 Vista 上做的那样)你没事!

        【讨论】:

          【解决方案7】:

          正如其他人所说,VS 是一个 32 位应用程序,因此虽然它在 64 位操作系统上运行良好,但它只能通过“魔法”镜像窗口提供的“魔法”镜像查看注册表和文件系统的一部分。

          这对我们来说唯一一次是当我们尝试在 .NET 应用程序中添加对 COM dll 的引用时。 COM dll 没有出现在引用对话框中,因为它仅注册为 64 位 DLL。为此,我们必须注册 32 位版本。

          【讨论】:

          • 我知道我们在我们的一个项目中使用了几个 COM dll(目前正在 32 位上开发,因此 dll 是 32 位)这不应该是创建互操作包装器时引用的问题吗?
          【解决方案8】:

          唯一的缺点是如果您想在 Vista x64 上使用 SQL Express Management Studio。我的速度非常慢,我找不到任何与原因相关的答案!

          编辑:

          没关系,我在打字时遇到了问题。

          Vista 具有 TCP/IP 自动调整功能。按照本教程进行操作:http://www.vistax64.com/tutorials/72308-auto-tuning-tcp-ip-receive-level.html 我禁用了它,现在一切都像梦一样运行!

          【讨论】:

            猜你喜欢
            • 2010-10-12
            • 2010-12-14
            • 1970-01-01
            • 2023-03-14
            • 2010-09-17
            • 2018-02-26
            • 2010-12-13
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多