我该如何解决Windows崩溃错误

时间:2015-04-16 04:32:53

标签: c# winforms

我的应用程序在客户端应用程序文件夹中创建一个exe,并尝试从那里运行它。即使exe运行正常且功能没有受到干扰,我也会收到一个崩溃弹出窗口,其中包含以下细节。同样的东西在我们的开发和工作中起作用。没有崩溃弹出窗口的测试机器。

我设法找到暂时解决此问题的方法是将注册表项设置如下

HKEY_CURRENT_USER\Software\Microsoft\Windows\Windows Error Reporting DontShowUI =1

现在我对可能导致此异常的原因一无所知,因为唯一的提示是more.dll我在错误详细信息中找到了这个并不是我在项目中添加的参考。有没有更好的方法以编程方式解决此问题,或者有人可以帮助我提出更多的想法。

    Problem signature:

          Problem Event Name:                        APPCRASH
          Application Name:                             MNM_Interface.exe
          Application Version:                           1.0.0.0
          Application Timestamp:                     54eaf32a
          Fault Module Name:                          more.dll
          Fault Module Version:                        1.2.1.0
          Fault Module Timestamp:                  54e2d422
          Exception Code:                                  c0000005
          Exception Offset:                                0040bb62
          OS Version:                                          6.1.7601.2.1.0.256.4
          Locale ID:                                             1033
          Additional Information 1:                  0a9e
          Additional Information 2:                  0a9e372d3b4ad19135b953a78882e789
          Additional Information 3:                  0a9e
          Additional Information 4:                  0a9e372d3b4ad19135b953a78882e789


Read our privacy statement online:
  http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
  C:\windows\system32\en-US\erofflps.txt

我不知道下面的事件查看器日志是否有帮助,但我认为专家可以得到一些线索。

Faulting application name: MNM_Interface.exe, version: 1.0.0.0, time stamp: 0x5523d05b
Faulting module name: more.dll, version: 1.2.1.0, time stamp: 0x54e2d422
Exception code: 0xc0000005
Fault offset: 0x0040bb62
Faulting process id: 0x1870
Faulting application start time: 0x01d0713b195e7b30
Faulting application path: C:\MNM\Pictures 1.1.0\MNM_Interface.exe
Faulting module path: C:\MNM\Pictures 1.1.0\more.dll
Report Id: 586ce056-dd2e-11e4-b2ce-08edb9de061e

2 个答案:

答案 0 :(得分:0)

您是否使用某些资源,如图标,位图,dll或其他类型的程序使用,但目前它们不可用? 如果是 - 尝试删除它们并查看程序的行为方式。

答案 1 :(得分:0)

正如@BJMyers所说,这是一个未经处理的例外。您可以编写外部程序来测试/处理异常。你可以有类似的东西:

AppDomain.CurrentDomain.UnhandledException += UnhandledExceptionFunction;

private void UnhandledExceptionFunction(Object sender, UnhandledExceptionEventArgs args)
{
    Exception ex = (Exception)(args.ExceptionObject);
    System.Diagnostics.StackFrame frame = new System.Diagnostics.StackFrame(0);
    string method;
    method = frame.GetMethod().ReflectedType.FullName;
}

一种好的开始方式是查看args参数以获取ExceptionType。如果您想获得更多细节,例如导致异常的方法,您可以查看StackFrame