windbg - Cannot download microsoft symbols when running cdb in a windows service -


i have .net windows service calling cdb.exe analyze crash dumps. want download symbols http://msdl.microsoft.com automatically when needed, using argument:

-y srv*c:\symbols*http://msdl.microsoft.com/download/symbols 

if run application console application, works expected , downloads needed symbols each dump.

the problem when start app windows service, symbols not downloaded and, if turn symnoisy on, @ cdb's output log have entry each symbol saying symbol hasn't been found @ http://msdl.microsoft.com

so, i've checked using sniffer , funny thing no request made microsoft symbols server when running service.

googling little, i've found i'm not 1 issue , seems problem when running application windows service, using winhttp library http requests, instead of wininet, think root of problem: http://support.microsoft.com/kb/238425

so, don't know why, cdb not able connect ms symbols server using winhttp library , need way force cdb use wininet default.

anyone has idea of workaround issue?

full answer here: http://infopurge.tumblr.com/post/10438913681/how-does-cdb-access-the-microsoft-symbol-server

when running command prompt, cdb uses wininet access internet resources. when running windows service, cdb uses winhttp access internet resources.

for winhttp need set registry settings stop attempt use proxy (bogusproxy) accessing symbol server.

you can force cdb use winhttp command line, , emulate happening within service test purposes typing following before loading cdb.

set dbghelp_winhttp=anythingotherthanempty 

to disable winhttp proxy cdb , symsrv need set 1 of following keys in registry.

for x32 version of cdb running on x32 bit machine windows service environment. hklm\software\microsoft\symbol server\nointernetproxy dword 1.

for x32 version of cdb running on x32 bit machine command prompt. hkey_current_user\software\microsoft\symbol server\nointernetproxy dword 1.

for x32 version of cdb running on x64 bit machine windows service environment. hklm\software\wow6432node\microsoft\symbol server\nointernetproxy dword 1.

for x32 version of cdb running on x64 bit machine command prompt. hkey_current_user\software\wow6432node\microsoft\symbol server\nointernetproxy dword 1.

for x64 version of cdb running on x64 bit machine windows service environment. hklm\software\microsoft\symbol server\nointernetproxy dword 1.

for x64 version of cdb running on x64 bit machine command prompt. hkey_current_user\software\microsoft\symbol server\nointernetproxy dword 1.


Comments

Popular posts from this blog

linux - Mailx and Gmail nss config dir -

c# - Is it possible to remove an existing registration from Autofac container builder? -

php - Mysql PK and FK char(36) vs int(10) -