在Visual Studio 2008“不允许64位应用程序更改”调试时(“Changes to 6

2019-07-20 06:13发布

我使用Visual Studio 2008,C#。 我尝试使用编辑和继续(在调试编辑代码),并得到此异常:

“更改为64位应用程序不准”

这是为什么? 有没有解决办法?

Answer 1:

编辑并继续所以没有办法为Visual Studio要么实现它不支持在CLR级64个应用程序。

解决这个问题的最简单的方法是针对您的应用程序的x86芯片。 这将导致其在WOW 64模式为32位的进程中运行,因此能够ENC。 您可以通过执行以下操作做到这一点

  1. 右键单击.EXE应用程序,然后选择属性
  2. 转到Build标签
  3. 更改目标平台组合框86



Answer 2:

就个人而言,我真正想要的是停止和编辑无法编辑后继续运行。

所以我干脆关掉工具/选项/调试/编辑并继续。

这样做抑制了那个讨厌的对话框,从缠着我有关缺失的功能,我并不想在第一时间:-)



Answer 3:

“编辑并继续”功能的64位代码的Visual Studio 2013下支持。

这里更多信息 。



Answer 4:

就像jcopenha说没有编辑并继续在x64上呢。 64位CLR的当前版本不支持它。 然而,有一个解决办法。

你可以找到它的Bug咿呀岗位 。

你需要使用x86的目标CPU编译您的托管程序集。 这将导致32位CLR被使用,而不是64位的CLR。

对于VB项目,右键单击该项目,并选择属性/编译/高级编译选项/目标CPU,将其设置为“86”。 对于C#项目,右键单击该项目并转到性质在/构建/平台目标,并将其设置为“86”。

希望能帮助到你。



Answer 5:

编辑和继续功能根本没有在64位得到落实呢。 我没有听说过,当他们计划做这些事上的任何更新。

又见为什么不编辑并在64 CLR继续工作?



Answer 6:

我在微软的Visual C#2010年快递同样的错误消息,这很有趣,但因为应用肯定是配置为x86的项目!

最后,这是下面一行在我的.csproj文件丢失:

<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'MY_CONFIG|x86'">
    ...
    <PlatformTarget>x86</PlatformTarget>
    ...
</PropertyGroup>

我不知道为什么它缺少...我想微软的Visual C#快讯2010年不bugfree;)



Answer 7:

  1. 当目标CPU设置为“任何CPU”,它会在32位Windows 32位应用程序,并在64位Windows 64位应用程序运行。 然而视觉工作室不允许“编辑并继续” 64位应用程序的功能。

  2. 为了64位计算机上调试“流利”,我们可以:

    一)设置“目标CPU”到“任何CPU”,但检查“不想32位”复选框。

    b)或,设置“目标CPU”到“86”

非常重要的:两个选项需要“启用的优化”复选框取消选中。



Answer 8:

不幸的是,编辑并继续不支持64位。 事实上,如果您尝试使用编辑和调试64位应用程序时继续,您会收到以下错误信息:“不允许64位应用程序更改”很多用户可能不知道,在默认情况下,当您创建在Visual Studio 2008中的C#或VB项目中,“平台”项目设置为“任何CPU”。 这意味着,如果您运行在32位操作系统上的应用程序,应用程序将运行32位程序和同样,如果您运行在64位操作系统上的应用程序,该应用程序将是64位。 “任何CPU”的后果是,当你尝试调试一个64位操作系统上的应用程序,你将无法使用编辑并继续功能。

然而,有一种变通方法。 在开发过程中,您可以为您的项目到32位平台,这意味着你的应用程序将作为32位进程甚至在64位操作系统上运行。 这被称为WOW64或“Windows在Windows上”,这基本上意味着你可以运行64位操作系统的32位应用程序。

那么,你如何为您的项目到32位平台? 那么,你需要创建使用Visual Studio配置管理器中的32位平台。 下面是一个简短演练。

首先,从开建“配置管理器”对话框 - >配置管理器。 配置管理器对话框如下图所示。



文章来源: “Changes to 64-bit applications are not allowed” when debugging in Visual Studio 2008