【发布时间】:2011-12-22 22:05:51
【问题描述】:
我有一个用 C# 编写的应用程序。此应用程序被 Windows 锁定,返回类似:“xxx 应用程序已停止工作”。
是否有可能获得这次崩溃的原因?我尝试在整个应用程序中使用 try{} catch{},但没有成功。它适用于我的电脑,但不适用于我朋友的电脑。 两台计算机具有相同的配置:
- Windows 7 7 Ultimate 32 位
- 处理器:2.13GHz
- 内存:2gb
更新
嗯,在我朋友的电脑事件日志中,我发现了崩溃的一些细节:
Faulting application name: xxxx.exe, version: 1.0.0.0,time stamp:0x4eb5e63a
Fault Module Name:KERNELBASE.dll, version: 6.1.7600.16850, time stamp:0x4e21132b
Exception Code:0xe0434352
Identification of the process that failed: 0x26c
Start time of the faulting application: ...
Faulting application path: ... \xxx.exe
Path F module failures: C:\Windows\system32\KERNELBASE.dll
Report ID: xxxxx-yyyy-dddd-dddd-aaaaaa
更新 2
最后,我找到了导致异常的函数。
用try {}catch (Exception Err) {}处理函数我发现了一些异常细节:
Err.Message:The device is not ready
Err.Source: mscorlib
我该如何解决?
【问题讨论】:
-
您查看过事件日志吗?
-
您是否在代码中使用了某种 c++ 包装类?还是你引用了c++ wrapper dll?
-
没有人可以告诉你如何在没有看到代码的情况下修复它,你没有做太多的事情。听起来您没有在朋友的机器上调试应用程序。如果你调试它,你应该能够找出导致错误的代码。
-
我有1687行代码(包括2个winForms,3个库一个我写的)。
-
函数试图访问什么设备