问题标签 [first-chance-exception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
343 浏览

c++ - 添加一个函数调用时应用程序幻象崩溃

我的应用程序有一些专门编写的调试代码,用于在调试模式下运行时将调试数据发送到输出窗口。当在下面的代码片段中调用该函数时,应用程序在我单步执行代码时GetCurrTime的以下调用中崩溃,或者在调用之前的行中崩溃,如果我让它自由运行。然而,真正奇怪的是,当崩溃发生时,PC 并没有落在这两条线上。PC 在完全不相关的功能中停止在返回线上。它变得更好了。调用堆栈没有显示函数返回的位置。我猜这台电脑不知何故陷入了困境。让这一切变得非常奇怪的是,当我注释掉对问题的调用时,它就消失了。mallocmallocGetCurrTime

只是为了好玩,这是发生崩溃时 PC 进入的函数(在函数最后一行的 return 语句中):

这是输出窗口中打印的错误:

ZCT.exe 中 0x7c936822 处的第一次机会异常:0xC0000005:访问冲突读取位置 0x00000000。HEAP [ZCT.exe]:堆在 5451460 附近的已提交范围内缺少最后一个条目 Windows 已触发 ZCT.exe 中的断点。

这可能是由于堆损坏,这表明 ZCT.exe 或其已加载的任何 DLL 中存在错误。

这也可能是由于用户在 ZCT.exe 具有焦点时按 F12。

输出窗口可能有更多诊断信息。程序“[0x9F4] ZCT.exe: Native”已退出,代码为 0 (0x0)。

有任何想法吗?

0 投票
3 回答
10753 浏览

c# - System.Xml.dll 中出现“System.Xml.XmlException”类型的第一次机会异常

当我启动我的应用程序(它是一个将 WCF 连接到服务的客户端)时,我在 Visual Studio 的输出窗口中看到许多行

System.Xml.dll 中出现“System.Xml.XmlException”类型的第一次机会异常

我已经打开了这个异常的抛出,并看到它发生在客户端调用 WCF 服务时。异常的消息是:

名称不得以“<”开头(德语:Ein Name darf nicht mit dem Zeichen '<', hexadezimaler Wert 0x3C, beginnen。)

我应该对此做些什么吗?或者这是正常的吗?这可能是性能问题吗?

谢谢你的帮助。

最好的问候,托马斯

0 投票
1 回答
7881 浏览

c# - 发生了第一次机会异常......我不知道为什么

每当我尝试调试我的 Windows Phone 7 C# 应用程序时,我都会在输出窗口中收到以下消息:

A first chance exception of type 'System.OverflowException' occurred in mscorlib.dll

A first chance exception of type 'System.OverflowException' occurred in mscorlib.dll

A first chance exception of type 'System.InvalidOperationException' occurred in Microsoft.Phone.dll

...然后,App.xaml.cs 在 VS 中打开(仍处于调试模式,我无法编辑任何内容)和“System.Diagnostics.Debugger.Break();” 突出显示。

为什么会发生这种情况,我该如何解决它,以及将来如何防止它?

0 投票
1 回答
4683 浏览

c# - 关闭 NamedPipeClientStream 时出现 System.Net.Sockets.SocketException

在我尝试关闭管道客户端后,我在输出控制台中看到以下错误:

System.dll 中出现“System.Net.Sockets.SocketException”类型的第一次机会异常

这是什么意思?我该如何解决?

0 投票
2 回答
24183 浏览

visual-studio-2010 - 当第一次机会异常发生时,如何使 Visual Studio 2010 中断?

我正在阅读 Stack Overflow 问题How can I set Visual Studio to show a stack trace for first chance exceptions?关于在 Visual Studio 2010 上调试第一次机会异常,我找不到这个选项。

如何让 Visual Studio 2010 在第一次机会异常发生时准确中断?

在此处输入图像描述

0 投票
1 回答
21236 浏览

c++ - C++:如何解决在未知点引起的第一次机会异常?

我正在处理的 C++ 项目在抛出第一次机会异常时终止。当我第一次尝试访问map<pair<int,int>, int>包含单个键值对的 a 时,这发生在调试模式下的 Visual Studio 2008 中。代码在逻辑上没有任何问题。

我已经阅读了第一次机会异常,并了解它们可能并不总是有问题。尽管如此,我还是尝试打破所有此类异常,并且正如预期的那样,发现生成了几个不会导致问题的异常。

我正在处理的类非常大,并且包含许多自定义内存分配。我推测其中之一是导致问题的原因。但是,我花了几个小时试图找到一种方法来确定出了什么问题,但一直无法做到。

下面列出了第一次机会异常输出。这不是很有帮助!

在这一点上我真的很挣扎,不知道如何继续。

谁能建议我如何解决这个问题,并准确找出问题所在?我将非常感谢您的建议。

更新

这是相关的代码。调试器在嵌套 FOR 中列出的第一个 cout 语句处中断:

更新 2

这是相关地图的鼠标悬停描述的图像;正如 Michael Burr 所建议的那样,它似乎已损坏。

在此处输入图像描述

0 投票
0 回答
1431 浏览

visual-studio-2008 - Visual Studio 2008:在第一次机会异常时启用中断,现在禁用但仍然中断?

我使用 Debug -> Exceptions 并检查 Common Language Runtime Exceptions -> System -> System.ApplicationException 为我的 C++ 项目启用了 Visual Studio 2008 中的第一次机会异常中断。更改起作用了,第一次机会异常会导致执行中断(断点),其中包含一个对话框,其中包含常规选项“中断”、“继续”。在此之后,我通过选中“异常”窗口中的所有顶级框来启用所有异常的中断。

我现在希望禁用此行为,因此取消选中顶级框,随后也取消选中 System.ApplicationException 复选框。自从这样做以来,我已经对我的项目进行了清理和构建。但是,该项目仍然会因第一次机会异常而中断。

知道为什么会这样,我该如何解决?比较郁闷!

0 投票
2 回答
2515 浏览

c++ - 暂时禁用第一次机会异常

有没有办法在 Visual C++ 中暂时禁用第一次机会异常?

像这样的东西:

我知道什么是第一次机会异常以及如何使用它们。

问题是,我正在分发一个使用异常的 DLL。
不幸的是,如果客户在他的程序中使用调试器,他会注意到我的实习生异常。
不是我想隐藏它们,更多的是我想摆脱这些支持问题。

0 投票
5 回答
3452 浏览

c++ - C++ LoadLibrary 抛出第一次机会异常,但有效吗?

我完成了我的小应用程序,并试图确保我没有内存泄漏和错误。查看我的输出后,我注意到我的一个函数抛出了 First-Chance 异常,但该函数运行良好并且不会崩溃。

该函数调用 CLR C++ DLL 中的另一个函数。我删除了 DLL 函数中的几乎所有代码只是为了进行测试,但仍然抛出异常,所以我知道问题出在我的 EXE 函数中。

这是EXE函数调用DLL函数的代码。

这是 DLL 函数(如您所见,我删除了所有代码,除了生成返回值的代码作为测试):

EXE 函数在“ const char* Return = MethodCall(strValue);”上引发异常(我启用了对这个异常的中断,这就是我所知道的)。

为什么这个函数会抛出这个异常?

谢谢你!

编辑

更新:我的字符集是 UNICODE。

更新#2:根据我在建议和答案中读到的内容,您假设此代码不起作用,但确实有效。我启用了对第一次机会异常的中断(是的,我确实知道什么是第一次机会异常),因为我希望这个程序质量很好,所有错误都消失了。代码运行良好,我只是想弄清楚为什么会抛出第一次机会异常,因为我喜欢成为一个更好的程序员。所以我想解决这个问题。

更新#3:我现在让我的代码检查 hDLL 和 hMethod 的值,并且在运行此函数时两者都不为空。问题似乎在于对 DLL 的调用。我假设函数签名是 100% 正确的,因为这段代码确实有效,它只是抛出了第一次机会异常。

更新#4:我在上面的函数中添加了新的更改,并添加了 DLL 函数代码。DLL 函数是一个 CLR C++ DLL。如前所述,我删除了 DLL 函数中的所有代码,以确保它不是我的 DLL。

0 投票
1 回答
1305 浏览

c# - 为什么在 WinForms 应用程序中使用 SaveFileDialogue 时出现 RPC 服务器错误?

当我尝试在 WinForms 应用程序中使用 SaveFileDialogue 时出现错误。我一定遗漏了一些东西,因为错误没有意义(对我来说!)!

错误是:“TestProject.exe 中 0x000007fefc99cacd 的第一次机会异常:0x000006BA:RPC 服务器不可用。”

此行运行时发生错误:“if (SD.ShowDialog() == DialogResult.OK)”。

这是我的代码:

编辑:我在本地保存文件,但是在用户甚至选择要保存的位置之前发生错误,它发生在我尝试显示对话框以供用户选择位置的地方!