I am trying to analyze crash using cdb.exe from windbg. I run an windows service to invoke cdb to analyze dmp that i passed in. Then send me the result.
Symbol search path is something like this:
d:\oldstyle;cache*d:\winsyms;srv*http://127.0.0.1:9094/home/apache/winsym
What i actually want is, download symbols from
http://127.0.0.1:9094/home/apache/winsym
and save to
d:\winsyms(local cache)
Problem is something like this:
Unable to load image C:\Windows\System32\combase.dll, Win32 error 0n2
DBGENG: combase.dll - Partial symbol image load missing image info
DBGHELP: Module is not fully loaded into memory.
DBGHELP: Searching for symbols using debugger-provided data.
DBGHELP: d:\oldstyle\combase.pdb - file not found
DBGHELP: d:\oldstyle\dll\combase.pdb - file not found
DBGHELP: d:\oldstyle\symbols\dll\combase.pdb - file not found
SYMSRV: BYINDEX: 0x1F
d:\winsyms
combase.pdb
6D54516506E95F4ABC3FBDAF3373F96D1
SYMSRV: UNC: d:\winsyms\combase.pdb\6D54516506E95F4ABC3FBDAF3373F96D1\combase.pdb - path not found
SYMSRV: UNC: d:\winsyms\combase.pdb\6D54516506E95F4ABC3FBDAF3373F96D1\combase.pd_ - path not found
SYMSRV: UNC: d:\winsyms\combase.pdb\6D54516506E95F4ABC3FBDAF3373F96D1\file.ptr - path not found
SYMSRV: RESULT: 0x80070003
SYMSRV: BYINDEX: 0x20
http://127.0.0.1:9094/home/apache/winsym
combase.pdb
6D54516506E95F4ABC3FBDAF3373F96D1
SYMSRV: UNC: D:\Windows Kits\Debuggers\x64\sym\combase.pdb\6D54516506E95F4ABC3FBDAF3373F96D1\combase.pdb - path not found
SYMSRV: UNC: D:\Windows Kits\Debuggers\x64\sym\combase.pdb\6D54516506E95F4ABC3FBDAF3373F96D1\combase.pd_ - path not found
SYMSRV: UNC: D:\Windows Kits\Debuggers\x64\sym\combase.pdb\6D54516506E95F4ABC3FBDAF3373F96D1\file.ptr - path not found
SYMSRV: HTTPGET: /home/apache/winsym/combase.pdb/6D54516506E95F4ABC3FBDAF3373F96D1/combase.pdb
SYMSRV: WinHttpSendRequest: 800C0057
SYMSRV: RESULT: 0x800C0057
DBGHELP: combase.pdb - file not found
I got "WinHttpSendRequest: 800C0057" after cdb tried to download symbol from my http server. It's totally ok if i call cdb from a Command Prompt.
I digged and found out:
When running from a Command Prompt, cdb uses WinINet to access internet resources.
When running from a Windows service, cdb uses WinHTTP to access internet resources.
But i found nothing about "WinHttpSendRequest: 800C0057"
User contributions licensed under CC BY-SA 3.0