【问题标题】:Delphi issues on windows 7 x64?Windows 7 x64上的Delphi问题?
【发布时间】:2010-11-29 17:53:31
【问题描述】:

我四处搜索,但找不到这些问题的直接答案,只有零碎的部分:如果我安装 Windows 7 x64,
1 - 我是否能够使用delphi 2007+,因为我习惯于启动它、在其中编写代码、在其中调试、在其中编译?我已经看到调试器问题和十六进制编辑解决方法。
2 - 我在该环境中编译的应用程序可以在 32 位版本的 Windows 上运行吗?
3 - 我在 32 位 Windows 上使用 delphi 编译的应用程序可以在这个 64 位版本上运行吗?

(当然,所有这些都是假设“正常”的应用程序,因为我不希望事情能够正常工作,如果我正在使用期望它们是 32 位长的指针,显然)

总体问题是,作为一个正在迁移到 Windows 7 64 位的人,我是否能够/应该将其用作我的主要 delphi 开发平台,还是我最好保持 32 位启动德尔福开发?

感谢任何能给我提供线索的人

【问题讨论】:

  • 我的 delphi 在 WinXP 64 位机器上速度较慢。但它可能是 Windows 本身,而不是 Delphi。

标签: delphi windows-7 64-bit compatibility


【解决方案1】:

不知道 Windows 7 64 位版本,但我已经在 Windows XP 64 位上使用 Delphi 4、5、2007 和 2009 将近一年了,考虑到微软在向后兼容性方面付出的努力,我没有看到为什么 Windows 7 上的情况会有很大不同。这回答了您的最后一个问题 - 无需保留单独的分区。使用虚拟化在 32 位系统上运行事物。 Windows 7 AFAIK 是否为您提供虚拟化的 Windows XP 子系统 - 免费,但您可能需要单独下载。

关于 2. 和 3.:编译应用程序的操作系统与部署无关,只要编译本身有效。我只在 32 位 Windows 版本上编译过 16 位 Delphi 程序,没有问题。但是,您应该始终 测试您的目标操作系统版本的干净安装,因为开发人员 PC 与用户 PC 有很大的不同,因此不能假设一切都会正常工作。不过这是一般建议,与 64 位操作系统无关。

您的 Delphi 程序将在 Windows 64 位的 32 位层 (WOW64 - Windows on Windows 64) 上运行,该层与真正的 32 位操作系统足够接近,您无需关心它,除非您与较低的系统级。

【讨论】:

    【解决方案2】:

    我昨天在 Windows 7 64 位下的 Delphi 2007 上做了一些工作,结果是一场灾难。每次我在调试时离开程序,无论是通过正常退出还是通过停止调试器,都会引发我无法摆脱的断言失败,从而导致整个 IDE 崩溃。 (这在 XP 下从未发生过。)显然 WOW64 模拟器并不像它应该的那样稳定...... :(

    如果您要尝试在 64 位 Windows 7 上工作,我强烈建议升级到 Delphi 2010,它是专门为符合 Windows 7 而构建的。如果这不是一个选项,那么至少安装一个带有 XP 的 VM 用于您的开发工作。

    【讨论】:

    • 在虚拟机中开发也带来了一些隐藏的好处。您可以轻松地在重大里程碑时制作整个开发环境的备份副本,如果您的开发机器崩溃了,只需一个文件副本即可恢复运行。
    【解决方案3】:

    正如 Mason Wheeler 所说,2007/2009 调试器和 64 位平台存在问题,但很容易出现fixed

    我每天都在 Windows 7 64 位上使用 D2007(带有此修复程序),效果很好。

    【讨论】:

      【解决方案4】:

      现在有a hotfix for this

      【讨论】:

      【解决方案5】:

      答案是:

      1. Yes - With the workaround for the debugger issue
      2. Yes - Delphi 2007 (native) will only build 32 bit applications
      3. Yes - Unless it's a Device Driver or low-level service
      

      首先应用Olaf's Blog 中提到的补丁。这修复了调试器退出错误。

      其次,安装Windows XP Mode,这是一个完全干净(合法)的Windows XP 32位虚拟机。

      在 Windows 7 64 位上编译应用程序。安装到虚拟机上。它应该可以工作。冲洗、起泡并重复您正在开发的其他应用程序。

      Windows 7 专业版和旗舰版的所有所有者都可以使用 XP 模式。不知道企业版。

      这是我目前用于开发的工具,因为我必须对 Macbook Pro 执行紧急 OS 切除术

      【讨论】:

        【解决方案6】:

        我在 Windows 7 Professional 64 位上运行 Delphi 2007,在不久前的周二发布补丁之前它还不错。抛出调试错误(SetThreadContext 失败)后,IDE 将死机。我应用了在http://cc.embarcadero.com/item/27521 找到的补丁,没有更多问题。

        HTH。 YMMV。


        道格

        【讨论】:

          【解决方案7】:

          仅供参考,我在 Win7 64 位上运行 Delphi 7。运行此版本的技巧是不要安装到 Program Files(x86) 文件夹 - 而是安装到 C:\Delphi7 之类的文件夹。以这种方式使用它大约一个月了,开发负载非常重,效果很好!

          【讨论】:

            猜你喜欢
            • 2013-05-26
            • 2010-12-06
            • 2011-07-02
            • 1970-01-01
            • 2014-02-05
            • 2011-11-28
            • 1970-01-01
            • 1970-01-01
            • 2023-04-06
            相关资源
            最近更新 更多