【问题标题】:Visual Studio 2013 debug crashVisual Studio 2013 调试崩溃
【发布时间】:2016-09-22 02:07:35
【问题描述】:

我有一个 WPF 项目 (C#),当我开始调试它时,它会导致 Visual Studio 2013 崩溃。我得到一个对话框,显示 [application].exe 已触发断点。有用于中断和继续的选项按钮。如果我选择继续 Visual Studio 崩溃。如果我选择 Break 我会到达 Main Thread/_NtWaitForSingleObject@12() 中的反汇编断点:

77C60223  ?? ?? 
77C60224  ?? ?? 
77C60225  rol         byte ptr [eax],0  
77C60228  add         byte ptr [ebx+0CC204C4h],al  
77C6022E  add         byte ptr [eax+2B8h],dl  
77C60234  add         byte ptr [ebx],dh  
77C60236  leave  

中断发生在 77C60228 处的第一条加法指令上。

这是在我安装了 Windows 7 SDK 并运行 WinDbg 之后才开始的新行为。 WinDbg 仍将启动并运行应用程序,但不会启动和运行 Visual Studio。该应用程序在正常启动时运行良好(除了我要查找的错误)。这个问题不会发生在每个项目上,只有我尝试用 WinDbg 调试的那个。

我正在尝试学习 WinDbg,但我不想失去 Visual Studio 调试功能。我要疯了。任何帮助表示赞赏。


针对这个问题,我升级到了 VS2015,它现在不会崩溃,而是提供以下内容:

    Managed Debugging Assistant 'FatalExecutionEngineError' has detected 
a problem in 'C:\Users\sculleb\Documents\Visual Studio 2015
\Projects\GOOSETest\bin\x86\Debug\GOOSETest.exe'.

    Additional information: The runtime has encountered a fatal error. 
The address of the error was at 0x72e31e51, on thread 0x2598. 
The error code is 0xc0000005. 
This error may be a bug in the CLR or in the unsafe or non-verifiable portions
of user code. Common sources of this bug include user marshaling errors for 
COM-interop or PInvoke, which may corrupt the stack.

选择“无需调试”时,应用程序正常启动。

【问题讨论】:

  • 重新安装 vs 可能是你想尝试的第一件事
  • 收集 Visual Studio 的故障转储并发送给Microsoft Connect
  • 关于这个问题,我升级到 VS2015 现在不会崩溃,而是提供以下内容:

标签: c# wpf visual-studio windbg


【解决方案1】:

问题是由以下位置的注册表项引起的:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image 文件执行选项

不确定它们的来源,但很可能是 WinDbg 或 Application Verifier。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多