Visual Studio调试器的问题

时间:2013-11-06 08:33:09

标签: c# debugging visual-studio-2012 visual-studio-2013

在调试代码时,我收到了以下错误。

  

调试器附加到w3wp.exe但未配置为调试此未处理的异常。要调试此异常,请分离当前   调试器。

我尝试了以下链接中的修复程序,但它对我不起作用。 http://social.msdn.microsoft.com/Forums/vstudio/en-US/373e738f-1bc7-4dcb-88b4-ee8e78d72dc1/an-unhandled-exception-was-raised-from-microsoft-net-framework-v-10-11-or-20-but-the-current?forum=vsdebug

使用Visual Studio 2012时工作正常,但在使用Visual Studio 2013时失败。我尝试修复Visual Studio 2013,但它从未起作用。

有人知道修复它吗?

感谢。

5 个答案:

答案 0 :(得分:3)

试试这个

  • 转到“项目属性”
  • 调试
  • 仅针对应用程序和后台进程将调试类型从托管更改为混合(托管和本机)。

如果您在同一个项目中使用本机C代码(非托管)和C#(托管)代码,则可能会遇到此问题。

将调试类型更改为混合会使调试速度变慢。

答案 1 :(得分:2)

我刚刚遇到这个问题,它已经通过在网站的应用程序池中启用32位应用程序来解决,详情请参阅此处(感谢Colm!):

http://colmprunty1.azurewebsites.net/a-debugger-is-attached-to-w3wp-exe/

答案 2 :(得分:0)

听起来好像你正好及时打开调试。您的程序抛出异常,而您当前的调试器未配置为处理,并且系统可能正在启动即时调试器。这是一个注册表设置,但也可以通过Visual Studio中的选项进行控制。

http://msdn.microsoft.com/en-us/library/k8kf6y2a(v=vs.85).aspx

通过编辑注册表来禁用实时调试

在“开始”菜单上,搜索并运行regedit.exe

在“注册表编辑器”窗口中,找到并删除以下注册表项:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AeDebug \ Debugger

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft.NETFramework \ DbgManagedDebugger

如果您的计算机运行的是64位操作系统,请同时删除以下注册表项:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Windows NT \ CurrentVersion \ AeDebug \ Debugger

HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft.NETFramework \ DbgManagedDebugger

注意不要意外删除或更改任何其他注册表项。

关闭注册编辑器窗口。

答案 3 :(得分:0)

有同样的问题。我一直想在调试模式下启动我的应用程序时收到此消息。 原来问题是,我仍然有appverifier(http://msdn.microsoft.com/de-de/library/windows/hardware/ff538115(v=vs.85).aspx)链接到我的应用程序。一旦取消链接,一切都恢复正常,我可以正常调试。

不确定是否与您的问题有关。只是说:)

答案 4 :(得分:0)

您是否可以修改源代码以便抛出有意义的异常?

还尝试使用VS 2013编译源代码并检查调试器这次运行是否正常。