用户报告说,他们从没有任何错误的应用程序退出,我有很多这样的错误在事件查看器:用户退出没有任何异常
事件类型clr20r3,P1 MAIN.EXE,P2 1.0.0.0,P3 4f6b05ad,P4 system.drawing,P5 2.0.0.0,P6 4333aeaf,P7 17e,P8 20,P9 system.argumentexception,P10 NIL。
的EventType clr20r3,P1 MAIN.EXE,P2 1.0.0.0,P3 4f6b05ad,P4 Microsoft.VisualBasic程序,P5 8.0.0.0,P6 4333d6d8,P7 5E,P8 1E1,P9 34ssps20bdj3nj0wmit5kamzhvglfzcc,P10 NIL。
的EventType clr20r3,P1 MAIN.EXE,P2 1.0.0.0,P3 4f6b05ad,P4 Microsoft.VisualBasic程序,P5 8.0.0.0,P6 4333d6d8,P7 85,P8 A2,P9 system.componentmodel.win32, P10 NIL。
我们在Windows Server 2003上安装了终端服务器,并且在上述一天中有大约500个错误。
有什么建议吗?
如果是用户模式的应用程序,应该有一个默认的顶层异常处理程序显示错误。如果不是,请检查以确保您不覆盖默认值并挂接正在吞服该错误的新的顶级异常处理程序。但是,是的,它实现日志记录绝不会伤害......只是不要通过将主要方法封装在try/catch块中来实现,而是使用非常规异常挂钩,这就是它的用处。 – 2012-07-31 17:55:17
@CodyGray通过“未处理的异常挂钩”,你是指'MyApplication.UnhandledException'事件? – 2012-07-31 17:58:30
是的,就是那个。这是记录错误以进行调试的最佳方式。将空白捕获块中的所有内容都包含在内,只是隐藏了错误,并希望从任何未知的异常中恢复,这是不负责任的乐观主义。我在之前讨论过[这里](http://stackoverflow.com/a/4827646/366904)。 – 2012-08-01 21:06:44