C#应用程序在特定点不断崩溃,需要帮助理解问题特征吗

C#应用程序在特定点不断崩溃,需要帮助理解问题特征吗,c#,windows,debugging,crash,C#,Windows,Debugging,Crash,我有一个C#Express 2010应用程序,它可以与托管的php脚本建立大量连接。一旦达到大约7500个成功通信点,该程序将停止工作,并提供此问题特征: Problem Event Name: APPCRASH Application Name: zz.exe Application Version: 1.0.0.0 Application Timestamp: 4c8d6459 Fault Module Name: ntdll.dll Fault Module Version: 6.0.6

我有一个C#Express 2010应用程序,它可以与托管的php脚本建立大量连接。一旦达到大约7500个成功通信点,该程序将停止工作,并提供此问题特征:

Problem Event Name: APPCRASH

Application Name: zz.exe
Application Version: 1.0.0.0
Application Timestamp: 4c8d6459
Fault Module Name: ntdll.dll
Fault Module Version: 6.0.6001.18000
Fault Module Timestamp: 4791a783
Exception Code: c00000fd
Exception Offset: 0002f1c2
OS Version: 6.0.6001.2.1.0.272.7
Locale ID: 1033
每次都是一样的,我真的没有足够深刻的理解来理解这一点。谷歌搜索错误和关于ntdll.dll文件的讨论基本上没有结果

还有一件事,它是一款运行在64位WindowsServer2007上的32位应用程序。它不能是本机64位应用程序,因为它使用jet.OleDB


如果有人能在这件事上提供一些帮助,我将不胜感激

这并没有真正的帮助,我们需要某种类型的stacktrace,即使这样,如果没有源代码,我们的帮助也会受到限制。如果程序本身没有显示错误,您可能会在Windows事件日志中更幸运。

您的应用程序在基础Win32子系统中导致堆栈溢出异常。寻找递归函数或大型局部变量分配。更好的是,如果您可以将VS调试器附加到应用程序并捕获错误发生的位置,那么您应该有一个堆栈跟踪,正好可以跟踪问题发生的位置。

这似乎是我使用的递归方法的问题。我将任务的结构更改为线程池,它似乎解决了这个稳定性问题。谢谢您的建议。

您如何知道这是堆栈溢出?如果您可以获得异常发生位置的堆栈跟踪,请这样做。然后检查它,找出错误发生在程序中的什么地方。然后检查周围的代码。一旦您大致了解了代码中哪些部分可能相关,哪些部分可能无关,请编辑您的问题并发布相关部分。请演示如何调用脚本。