当我调试ASP.NET MVC应用程序时,KeyVaultClient
会随机抛出异常:
托管调试助手'FatalExecutionEngineError':'运行时遇到致命错误。错误的地址为线程0x6098上的0x59eab403。错误代码为0xc0000005。此错误可能是CLR或用户代码中不安全或不可验证部分的错误。该错误的常见来源包括COM-interop或PInvoke的用户封送处理错误,这些错误可能会破坏堆栈。'
我使用:
Microsoft.Azure.KeyVault
3.0.3 Microsoft.AspNet.WebApi
5.2.3 我熟悉this question,但没有任何帮助。
启用托管兼容模式后,我得到了稍微不同的错误:
托管调试助手“ FatalExecutionEngineError”已在“ C:\ Program Files(x86)\ IIS Express \ iisexpress.exe”中检测到问题。 附加信息:运行时遇到致命错误。错误的地址位于线程0x54a8上的0x6c0db403。错误代码为0xc0000005。此错误可能是CLR或用户代码中不安全或不可验证部分的错误。该错误的常见来源包括COM-interop或PInvoke的用户封送处理错误,这些错误可能会破坏堆栈。 发生
答案 0 :(得分:1)
新的托管调试引擎使我们能够比旧的实现更快地添加新功能。仅一年后,Visual Studio 2013中引入的功能数量就可以看出这一点,包括托管返回值,.NET 64位编辑和 Continue, Async Callstacks
增强功能以及改进的“任务窗口”仅举几例。不幸的是,新的调试引擎尚不支持某些方案,因此在这些情况下,您将不得不切换回旧版引擎。
您收到的错误是由于新调试引擎不支持的问题。
请尝试以下设置,直到出现相同的错误为止。
要全局切换回旧版调试引擎,请选择“工具/选项”
然后在“调试/常规”标签上选中“使用托管的兼容模式”。
global选项将强制将旧版引擎用于任何启动或附加。
希望有帮助。