【问题标题】:FatalExecutionEngineError after restarting debug session重新启动调试会话后发生 FatalExecutionEngineError
【发布时间】:2019-05-08 14:20:02
【问题描述】:

几周(几个月?)以来,在 Visual Studio 2017 / 2019 Enterprise 中重新启动我的 ASP.NET 应用程序后,我有时会遇到以下异常。仅当 IIS Express 已经在运行我的应用程序并且我需要在重新编译后启动新的调试会话时才会发生这种情况。

无论何时发生这种情况,我都必须终止 IIS Express (taskkill /f /im iisexpress.exe) 并在 VS 中启动一个新的调试会话。我无法弄清楚是什么触发了这个问题。有一天它开始在 VS 2017 Enterprise 上发生。也许是因为我收到了一些 Win10 更新?升级到 VS 2019 Enterprise 并没有解决问题。

托管调试助手“FatalExecutionEngineError”
Message=Managed Debugging Assistant 'FatalExecutionEngineError' : '运行时遇到致命错误。错误地址位于线程 0x16b8 上的 0x45b30496。错误代码为 0xc0000005。此错误可能是 CLR 中的错​​误或用户代码的不安全或不可验证部分中的错误。此错误的常见来源包括 COM 互操作或 PInvoke 的用户封送错误,这可能会损坏堆栈。'

报告了一些类似的问题,但要么不能解决我的问题,要么不适用:

【问题讨论】:

  • 反恶意软件是造成 FEEE 的常见原因。当一个可执行文件从看似不存在的地方出现并且接下来开始做 webby 的事情时,会变得格外兴奋。所以暂时禁用它,看看是不是这个原因。
  • 机器上没有运行反恶意软件。 Windows Defender 已通过本地 GPO 禁用。
  • 恶意软件是 FEEE 的常见原因。所以暂时禁用它,看看是不是这个原因。开玩笑的,请在另一台机器上尝试以找出原因。
  • 我不是团队中唯一遇到此问题的人。此 Windows 虚拟机仅用于开发,我很确定上面没有恶意软件。

标签: c# visual-studio iis-express visual-studio-debugging


【解决方案1】:

我不确定我在哪里看到的,但显然 .NET Framework 4.7.x 中有一个错误导致了这个问题。升级到 .NET Framework 4.8 解决了这个问题。 (项目继续针对4.6.2)

【讨论】:

    【解决方案2】:

    我在 VS17 上遇到了同样的异常,以管理员身份运行 IDE 解决了它。我知道这不是一个理想的解决方案,但就我而言,它是唯一可行的解​​决方案。我尝试的其他一切都失败了。 希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-23
      • 2012-09-17
      • 2015-08-28
      相关资源
      最近更新 更多