用一行代码让w3wp进程崩溃,如何查找w3wp进程崩溃的原因
2009-12-19 20:54
411 查看
W3wp进程崩溃了,在系统日志中留下了一个错误,而留下的错误信息却很少,如何才能快速查找w3wp崩溃的原因呢?
首先,我们来写一行代码让w3wp崩溃:
他们记录了w3wp进程的退出消息和退出堆栈,通常我们在Application_End事件中记录这两个变量的值,就可以看到崩溃的堆栈。具体怎么做请看代码
以上代码的是在Application Start的时候给AppDomain的UnhandleException时间加处理方法,来记录未处理异常的发生原因。
首先,我们来写一行代码让w3wp崩溃:
private string _shutDownMessage; private string _shutDownStack;
他们记录了w3wp进程的退出消息和退出堆栈,通常我们在Application_End事件中记录这两个变量的值,就可以看到崩溃的堆栈。具体怎么做请看代码
以上代码主要使用了反射,本文不做详细解释。 上面的这种方法通常情况可以得到w3wp崩溃的调用堆栈,我们还有另一种方法来获得。利用AppDomain.CurrentDomain.UnhandledException 事件来记录未处理异常的发生原因,代码也很简单: protected void Application_Start(object sender, EventArgs e) { AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); } void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { Exception ex = e.ExceptionObject as Exception; string msg = ex.Message; string stack = ex.StackTrace; }
以上代码的是在Application Start的时候给AppDomain的UnhandleException时间加处理方法,来记录未处理异常的发生原因。
相关文章推荐
- 用一行代码让w3wp进程崩溃,如何查找w3wp进程崩溃的原因
- 用一行代码让w3wp进程崩溃,如何查找w3wp进程崩溃的原因
- 用一行代码让w3wp进程崩溃,如何查找w3wp进程崩溃的原因
- 71.iOS 错误堆栈查找崩溃原因的方法---根据崩溃信息,找到对应的崩溃代码
- [小技巧] 如何在 git 里查找哪一个 commit 删除了代码的一行
- VS 2005使用map文件查找程序崩溃原因
- 原因以及如何避免产生僵尸进程
- 如何用一行C++代码读写数据库
- 替换TXT文件里的字符串,一行一行查找替换,java代码
- 如何使用MAP文件找到程序崩溃的原因
- linux如何根据进程ID查找启动程序的路径
- iOS错误堆栈查找崩溃原因的方法
- iOS从crash信息中查找崩溃原因
- 在.NET中,如何查找一个进程的父进程
- 如何通过崩溃地址找到出错的代码行(ZT)
- ps如何通过进程名来查找进程号
- VS2005(vs2008,vs2010)使用map文件查找程序崩溃原因
- 一行代码设置本进程的oracle客户端字符集
- 如何定位Sharepoint网站集所在的w3wp进程
- 一行能让IE6崩溃的简单HTML和CSS代码