How to get handle to an event that may cause my application to go in hang state

为君一笑 提交于 2019-12-13 06:52:34

问题


I am doing a dump file analyis for an application hang problem. Here is one interesting line from the stack trace.

0bc2f3e4 75a8bd1e 0bc2f298 0bc2f30c 00000001 ntdll!KiFastSystemCallRet
0bc2f32a 6a393c42 00000001 7ffdf000 00000001 kernel32!WaitForMultipleObjectsEx+0x8e

Looking at WaitForMultipleObjectEx description in MSDN, the second parameter is const HANDLE *lpHandles. This make me thing that I should be able to do a !handle 7ffdf000 to figure out which event is it waiting for but when I do that, I get following

Type Error retrieving type

Any ideas what I may be doing wrong here or any tips on getting more details on cause of hang?


回答1:


The second parameter is pointer to array of HANDLE's. In your case, since the size of array is 1, you should be able to dump the handle using command
!handle poi 7ffdf000




回答2:


What about "dd 7ffdf000"? and the first I4 is the handle.



来源:https://stackoverflow.com/questions/7285037/how-to-get-handle-to-an-event-that-may-cause-my-application-to-go-in-hang-state

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!