Re: 加载文件

WinDbg

加载文件


azhuazhu 2008-11-22, 10:16 上午

我使用!peb命令可以看到peb的地址,然后使用dt _peb 地址  的命令,windbg提示我没有符号文件,请问,需要加载什么符号文件?如何加载?

我已经在“符号文件路径”中填写了符号服务器和对应程序符号文件的路径。  多谢大虾了。

Re: 加载文件


土豆泥 2008-11-22, 11:05 上午
传说中的RP问题吧?;-)
NT内核的符号文件和NTDLL的符号文件中都有这个类型的符号。
lkd> dt nt!_peb
+0x000 InheritedAddressSpace : UChar
...
lkd> dt ntdll!_peb
+0x000 InheritedAddressSpace : UChar
...
使用lm命令看一下,你的这两个模块有符号吧?
lkd> lm m nt*
start end module name
7c900000 7c9b0000 ntdll (pdb symbols) d:\symbols\ntdll.pdb\...\ntdll.pdb
804d7000 806cdc80 nt (pdb symbols) d:\symbols\ntkrnlpa.pdb\...\ntkrnlpa.pdb
如果没有符号,那么执行!sym noisy然后执行.reload看什么原因(《软件调试》P943)。

Re: 加载文件


azhuazhu 2008-11-25, 09:20 上午
0:000> lm
start end module name
00400000 0042d000 1 C (private pdb symbols) F:\1\Debug\1.pdb
77e60000 77f32000 KERNEL32 (deferred)
77f80000 77ffc000 ntdll (pdb symbols) e:\symbols\ntdll.pdb\41AFDCD61\ntdll.pdb
0:000> !peb
PEB at 7FFDF000
InheritedAddressSpace: No
ReadImageFileExecOptions: No
BeingDebugged: Yes
ImageBaseAddress: 00400000
Ldr.Initialized: Yes
Ldr.InInitializationOrderModuleList: 131f78 . 1320b8
Ldr.InLoadOrderModuleList: 131ee0 . 1320a8
Ldr.InMemoryOrderModuleList: 131ee8 . 1320b0
Base TimeStamp Module
400000 492222c8 Nov 18 10:04:56 2008 F:\1\Debug\1.exe
77f80000 41e648e0 Jan 13 18:09:36 2005 C:\WINNT\system32\ntdll.dll
77e60000 42a0669b Jun 03 22:18:03 2005 C:\WINNT\system32\KERNEL32.dll
SubSystemData: 0
ProcessHeap: 130000
ProcessParameters: 20000
WindowTitle: 'F:\1\Debug\1.exe'
ImageFile: 'F:\1\Debug\1.exe'
CommandLine: 'F:\1\Debug\1.exe'
DllPath: 'F:\1\Debug;.;C:\WINNT\system32;C:\WINNT\system;C:\WINNT;C:\Program Files\Debugging Tools for Windows (x86)\winext\arcade;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem'
Environment: 0x10000
0:000> dt _peb 7FFDF000
Symbol _peb not found.
调试信息如上,刚学,望高手指教,多谢了。

Powered by Community Server Powered by CnForums.Net