启用非托管调试时不允许更改?

时间:2009-08-26 05:47:02

标签: asp.net debugging managed

我收到错误

  

启用非托管调试时不允许更改

其实我收到以下消息,但Google没有返回很多结果

  启用非托管调试时,

不允许进行更改

这是什么意思?我如何解决它?请注意,这是一个ASP.NET项目。勾选编辑并继续不会使此错误消失。

3 个答案:

答案 0 :(得分:26)

转到“项目属性”,然后在“Web”选项卡的“调试器”部分中取消选中“本机代码”。

编辑:已更改为ASP .Net

答案 1 :(得分:4)

Visual Studio中的混合模式调试器是一个完全不同于本机代码调试器或托管代码调试器的调试器。主要目的是同时兼顾非常复杂的托管调试API和非常复杂的本机调试API,以便在同时使用本机代码和托管代码时提供可靠,可用的调试器。由于调试器的编写方式,Visual Studio混合模式调试团队必须完全重新实现编辑和继续(这恰好是技术上最具挑战性的调试功能)才能包含它。我想这是因为:

  • 重新实施这是一项非常具有挑战性的功能。
  • 实现将导致CLR调试API(可能还有内部)和本机调试API的内部更改的显着额外耦合。
  • 混合模式调试器的性能显着落后于托管代码调试器,导致大多数用户使用后者进行通用调试,即使不考虑ENC功能。因此,实施该功能将吸引最少数量的用户。

对实际挑战加权的好处导致投票决定不再使用此功能。

答案 2 :(得分:3)

对于ASP.NET Web应用程序/网站项目,请转到“Web”选项卡并滚动到最底部,其中显示调试器取消选中本机代码