我有一个WPF项目(C#),当我开始调试它时会崩溃Visual Studio 2013。我得到一个对话框,说[application] .exe触发了一个断点。 Break和Continue有选项按钮。如果我选择继续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.
当选择“Start without debugging”时,应用程序正常启动。
答案 0 :(得分:0)
问题是由以下注册表项引起的:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Image File执行选项
不确定它们的来源,但很可能是WinDbg或Application Verifier。