【问题标题】:Change to 64 bits not allowed when trying to edit in debug, why?尝试在调试中编辑时不允许更改为 64 位,为什么?
【发布时间】:2008-10-15 23:27:40
【问题描述】:

当我尝试在调试中编辑时收到此消息(见下图)。这仅发生在我的 Vista64 位操作系统中,而不发生在我的 XP 计算机中。为什么以及我应该怎么做?

更新 我发现我需要在 x86 中编译才能在调试时更改值。所以我的问题是为什么我不能在 x64 中做到这一点?

alt text http://img183.imageshack.us/img183/8523/changetohe5.png

【问题讨论】:

    标签: c# .net .net-2.0 editing compilation


    【解决方案1】:

    没有技术原因,只是没有实施。根据一些消息来源,微软希望在 CLR 的下一个版本中实现它。

    见: http://blogs.msdn.com/stevejs/archive/2005/11/15/493018.aspx#499593

    【讨论】:

      【解决方案2】:

      迈克·斯托尔says:

      EnC 做了一些非常底层的事情 这是非常特定于操作系统的,所以 仅限于单一平台是 主要是资源限制。 未来的 CLR 无疑会扩展这一点。 我们的移植工作也从 在 V2 中从头开始,所以所有其余的 调试服务必须是 也移植了,所以我们已经有了一个非常 大项目在这里。此外,我们相信 EnC 的最大场景是 围绕允许 人们至少要在 x86 中开发。 在这种情况下有一个解决方法:on 一台 64 位机器,你可以启动一个 纯 IL 应用程序作为 WOW 中的 32 位应用程序, 然后对其进行EnC。

      这些都是 CLR 的限制, 不是 Visual Studio,这意味着如果 第 3 方调试器添加了 EnC,他们将 有同样的限制。在所有 情况下,我们感到高兴的是 启用每个案例的成本更好 花在制作核心场景上 更强。

      【讨论】:

        【解决方案3】:

        我更改了配置管理器。它正在编译到任何 Cpu ......并且任何 Cpu 设置为 x64 ......我将任何 Cpu 更改为 x86 并且它可以工作。这样问题就解决了……

        谁能告诉我为什么在 X64 中我们不能在调试中编辑? (如果有人有这个子问题的答案,我会接受)。

        【讨论】:

          【解决方案4】:

          大概他们还没有为 x64 代码实现编辑并继续。我不认为有任何更深层次的原因。

          【讨论】:

            猜你喜欢
            • 2016-08-10
            • 1970-01-01
            • 1970-01-01
            • 2023-04-02
            • 2021-09-19
            • 1970-01-01
            • 2011-07-10
            • 2016-05-10
            • 1970-01-01
            相关资源
            最近更新 更多