【问题标题】:How to find reason for 'System.Runtime.InteropServices.SEHException' occurred in System.Private.CoreLib.ni.dll?如何查找 System.Private.CoreLib.ni.dll 中发生“System.Runtime.InteropServices.SEHException”的原因?
【发布时间】:2017-07-14 15:45:17
【问题描述】:

我编写了一个在 Raspberry PI 3 上运行的 Windows 10 IoT (UWP) 应用程序。该应用程序是 Azure IoT Hub 的客户端,并且还使用 Azure Event Hub 和 Azure Table Storage 的接口。

有时我会在 VS 2017 的输出窗口中记录以下异常:

未处理的类型异常 'System.Runtime.InteropServices.SEHException' 发生在 System.Private.CoreLib.ni.dll 外部组件抛出了一个 例外。

我正在 VS 2017 中运行应用程序,试图找出应用程序崩溃的原因。它通常可以正常运行几天,直到它因此错误而崩溃。

崩溃似乎不是我自己的代码造成的。没有调用我自己的异常处理程序,也没有看到任何相关的调用堆栈信息。

有谁知道如何确定这样的崩溃?

【问题讨论】:

  • 您可以尝试在您的App.xaml.cs 中订阅UnhandledException 事件并在那里记录堆栈跟踪。
  • SEHException 表示本机代码中的异常。在项目属性中启用本机代码调试器并在其下运行您的项目。只要您将 VS 配置为在异常设置中停止(调试 -> Windows -> 异常),VS 就应该停止。

标签: c# .net azure uwp


【解决方案1】:

确保为异常类型启用了“抛出时中断”(设置在调试 -> Windows -> 异常中)。这将导致调试器在出现问题的地方停止,从而更容易找出问题所在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-01
    • 2022-11-17
    • 1970-01-01
    • 2011-07-05
    • 2014-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多