.NET运行时事件ID 5000

时间:2008-10-13 20:57:11

标签: .net exception

有谁知道如何破译.NET Runtime Event Id 5000错误?我已将其记录为:

P1:  <assembly name>,exe
P2:  2.1.4.1 (assembly version)
P3:  48b2b154
P4:  System
P5:  2.0.0.0
P6:  471ebf0d
P7:  575
P8:  1d
P9:  n3ctrye2kn3c34sgl4zqyrbfte4m13nb
P10: NIL

我认为这些是CLR VM的寄存器值,还是对函数的参数调用?我遇到的Google点击似乎在某处有一个例外类型 - 提供某种线索。从这一个,我可以识别我的一个程序集名称和版本(P1和P2),也许可以识别FX程序集和版本(P4和P5)。其余的,我很难搞清楚。

奇怪的是,看似随机的“n3ctry ......”字符串实际上确实提出了hits on Google,但还不足以让我对它的含义有所了解。一个临时文件可能吗? ClickOnce隔离存储路径?这些算法是否足够可预测会产生大量冲突?

欢迎提出意见 - 因为这个特定的应用程序处于一个使生产调试非常困难的环境中。

1 个答案:

答案 0 :(得分:4)

这只是应用程序内部发生的未处理异常。检测应用程序以记录比.NET更多的信息 - 即使您可以获得有关所有Px行的信息,也可能不足以进行调试。

wandering through the wilderness博客条目对如何解决此问题提出了很好的建议。简而言之,您需要挂钩appdomain's unhandled exception event

   AppDomain.CurrentDomain.UnhandledException += new UnhandledException...

然后在某些地方记录更多信息,例如事件日志。有关ASP.NET事件的KB article 911816包含用于将异常信息转储到可能有用的事件日志的示例代码。