程序为何突然退出
操作系统:windows xp sp3
程序开发工具:vs2010c#,在程序中有调用c写的dll
现象:
程序无规律、无故、偶尔、突然退出,即突然消失,我在程序的Main中加了一个catch也无法捕捉到错误信息。
请教各位,这是什么原因呢,如何定位到错误位置?
[解决办法]
这……有点难猜,试试先不引用那dll看看
[解决办法]
估计是调用出错了,一些致命错误导致退出,最常见的就是死循环,你就一下日志,看看是哪部草组引起崩溃的
[解决办法]
你试试在 main 第一行注册 AppDomain.CurrentDomain.UnhandledException 事件
AppDomain.CurrentDomain.UnhandledException += (v1, v2) =>{ Exception ex = (Exception)v2.ExceptionObject; // 这里加些提示代码,比如往文件里写些出错信息,看看这样能不能捕获到异常};
[解决办法]
c的东西一旦出错你这里应当是获取不到什么很有价值的信息
你不放在dll里面写日志
[解决办法]
异常抛到C的dll代码了
[解决办法]
显然是那个C的dll有Bug,要有源码,调试一下
调试dll
[解决办法]
用3L的方法加日志,程序如遇到无法处理的异常自动退出时会记录日志。
[解决办法]
要是在CATCH中捕获不到的话
本人感觉好像在DLL中出问题了
[解决办法]
估计c调用dll出问题了,vs无法处理此异常,会自动退出
[解决办法]
dll的错误try不了的,只能看它的源码了,估计内存溢出可能性比较大。
[解决办法]