i_a*_*orf 9 debugging windbg locks
我正在使用windbg(最新的MSDN下载页面).
我正在尝试在我的应用程序中调试死锁,并且!锁定非常有用.但是,它不起作用:
0:023> !locks NTSDEXTS: Unable to resolve ntdll!RTL_CRITICAL_SECTION_DEBUG type
NTSDEXTS: Please check your symbols
Run Code Online (Sandbox Code Playgroud)
我不知道为什么会感到不安.我已正确加载符号:
0:023> .sympath
Symbol search path is: srv*
Expanded Symbol search path is: cache*c:\debuggers\sym;SRV*http://msdl.microsoft.com/download/symbols
Run Code Online (Sandbox Code Playgroud)
并且NTSD同意:
0:023> lmv m ntdll
start end module name
777b0000 77930000 ntdll (pdb symbols) c:\debuggers\sym\wntdll.pdb\E9D10FA3EB884A23A5854E04FB7E2F0C2\wntdll.pdb
Loaded symbol image file: C:\Windows\SysWOW64\ntdll.dll
Image path: ntdll.dll
Image name: ntdll.dll
Timestamp: Mon Jul 13 18:11:23 2009 (4A5BDB3B)
CheckSum: 00148A78
ImageSize: 00180000
File version: 6.1.7600.16385
Product version: 6.1.7600.16385
File flags: 0 (Mask 3F)
File OS: 40004 NT Win32
File type: 2.0 Dll
File date: 00000000.00000000
Translations: 0409.04b0
CompanyName: Microsoft Corporation
ProductName: Microsoft® Windows® Operating System
InternalName: ntdll.dll
OriginalFilename: ntdll.dll
ProductVersion: 6.1.7600.16385
FileVersion: 6.1.7600.16385 (win7_rtm.090713-1255)
FileDescription: NT Layer DLL
LegalCopyright: © Microsoft Corporation. All rights reserved.
Run Code Online (Sandbox Code Playgroud)
堆栈看起来很好:
0:036> k
ChildEBP RetAddr
1506fdd8 7784f546 ntdll!DbgBreakPoint
1506fe08 75bf3677 ntdll!DbgUiRemoteBreakin+0x3c
1506fe14 777e9d72 kernel32!BaseThreadInitThunk+0xe
1506fe54 777e9d45 ntdll!__RtlUserThreadStart+0x70
1506fe6c 00000000 ntdll!_RtlUserThreadStart+0x1b
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏.
修正此问题的正确版本是6.12.2.633.它是DVD根目录(.iso)中"调试器"文件夹中WDK 7.1的一部分.
或者,抓住WDK 7.1 Web安装程序并安装"只是"Windows调试工具(尽管这似乎涉及一百兆字节的无关材料,与安装程序中的任何复选框都不对应).
dlanod评论:
我还发现了msdn-archives ,它允许您下载新版本的独立版本.
而这个链接确实有效.(比WDK安装程序好多了)
| 归档时间: |
|
| 查看次数: |
4743 次 |
| 最近记录: |