gpt4 book ai didi

c# - VS2013 似乎没有正确附加 - 调试器已附加但未配置为调试此未处理的异常

转载 作者:可可西里 更新时间:2023-11-01 03:01:14 26 4
gpt4 key购买 nike

在编写控制台应用程序时,我使用的是 SAP DLL。尝试添加 SAP 对象时出现以下错误:

A debugger is attached to but not configured to debug this unhandled exception. To debug this exception detach the current debugger.

代码:

SAPbobsCOM.GeneralService oGeneralService = oCmpSrv.GetGeneralService("WEPPAGE");
SAPbobsCOM.GeneralData oGeneralData = (SAPbobsCOM.GeneralData)oGeneralService.GetDataInterface(di.GeneralServiceDataInterfaces.gsGeneralData);
oGeneralData.SetProperty("U_WebId", "1");
try
{
oGeneralService.Add(oGeneralData);
}
catch (Exception e)
{
Logger.WriteLog("Error Add object " + e.Message);
}

虽然代码用 try&catch 包装,但 IDE 崩溃了。

enter image description here

在网络上进行多次搜索和建议后,没有任何帮助,我遇到了 this post并应用建议的解决方案并在项目属性调试选项卡下启用 native 代码调试。

enter image description here

勾选此选项的结果是,不是让我调试未知错误,异常只是“消失”并且代码运行时没有干扰。

问题

  1. 为什么异常消失了没有调试?
  2. 是否有可能针对这个问题有不同的解决方法,因为启用 native 代码调试会使应用程序速度降低 10 倍,而不是这个问题的真正解决方案。

最佳答案

Although the code is wrapped with try&catch, the IDE crashes

不,WER 对话框显示崩溃的是您的程序,而不是 IDE。不是您的代码,OBServerDLL 是一个 SAP 组件。鉴于崩溃的性质,使用 try/catch 将无法捕获此异常,它发生在 SAP 代码内的工作线程上。

请记住,崩溃原因非常令人讨厌,异常代码 c0000005 等同于 AccessViolationException。通常的原因是内存损坏。永远不要捕获这样的异常,您的程序无法有意义地继续运行。

Why does the exception disappears and not debugged?

这肯定是应该发生的,非常不健康。 AVE 往往是相当随机的,内存损坏并不能保证崩溃。请记住,如果它确实在您调试时发生,那么您仍然找不到任何有关原因的信息,因为您没有 OBServerDLL 的源代码。

enabling the native code debugging is slowing down the app by 10x

这不太可能,除非 native 代码以非常高的速度抛出异常。您可以在“输出”窗口中轻松看到的内容。它所做的是减慢调试 session 的启动速度。调试器将尝试为所有 native 可执行文件查找 PDB,它不会在 Microsoft Symbol Server 中为 SAP 代码找到任何东西。避免延迟的最简单方法是使用“工具”>“选项”>“调试”>“符号”,取消选中“Microsoft 符号服务器”选项。

This question在 SAP 支持论坛上的内容在某种程度上具有可比性。也是寻求此类问题帮助的最佳场所。尽管您可能需要 SAP 升级工程师的支持,但他需要一个小型重现项目和崩溃进程的小型转储。

关于c# - VS2013 似乎没有正确附加 - 调试器已附加但未配置为调试此未处理的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29898380/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com