如何检查Microsoft符号服务器是否可用,如果没有则联系它们?

时间:2016-12-26 12:33:33

标签: windbg

当我使用WinDbg命令.reload /f /v ntdll.dll从微软符号服务器下载符号时,请求总是失败,如下所示:

AddImage: C:\Windows\System32\ntdll.dll  DllBase  = 00007ffc`27850000 
Size     = 001ce000  Checksum = 001ca321  TimeDateStamp = 57dcb78c
SYMSRV:  BYINDEX: 0x10D
         d:\symbols*http://msdl.microsoft.com/download/symbols
         ntdll.pdb
         70F83B45D56645FD962606D8D09AF5971 SYMSRV:  d:\symbols\ntdll.pdb\70F83B45D56645FD962606D8D09AF5971\ntdll.pdb -
file not found SYMSRV:  HTTPGET:
/download/symbols/ntdll.pdb/70F83B45D56645FD962606D8D09AF5971/ntdll.pdb
SYMSRV:  HttpQueryInfo: 404 - HTTP_STATUS_NOT_FOUND SYMSRV:  HTTPGET:
/download/symbols/ntdll.pdb/70F83B45D56645FD962606D8D09AF5971/ntdll.pd_

SYMSRV:  HttpQueryInfo: 404 - HTTP_STATUS_NOT_FOUND SYMSRV:  HTTPGET:
/download/symbols/ntdll.pdb/70F83B45D56645FD962606D8D09AF5971/file.ptr
SYMSRV:  HttpQueryInfo: 404 - HTTP_STATUS_NOT_FOUND SYMSRV: 
d:\symbols\ntdll.pdb\70F83B45D56645FD962606D8D09AF5971\ntdll.pdb not
found SYMSRV: 
....symbols/ntdll.pdb/70F83B45D56645FD962606D8D09AF5971/ntdll.pdb not
found SYMSRV:  BYINDEX: 0x10E
         d:\symcache
         ntdll.pdb
         70F83B45D56645FD962606D8D09AF5971 SYMSRV:  d:\symcache\ntdll.pdb\70F83B45D56645FD962606D8D09AF5971\ntdll.pdb -
file not found SYMSRV: 
d:\symcache\ntdll.pdb\70F83B45D56645FD962606D8D09AF5971\ntdll.pdb not
found DBGHELP: ntdll.pdb - file not found
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for ntdll.dll -  DBGHELP: ntdll - export symbols

 ************* Symbol Loading Error Summary ************** 
Module name            Error 
ntdll                  The system cannot find the file specified
: srv*d:\symbols*http://msdl.microsoft.com/download/symbols
                The SYMSRV client failed to find a file in the UNC store, or there
                is an invalid UNC store (an invalid path or the pingme.txt file is
                not present in the root directory), or the file is present in the
                symbol server exclusion list.

                        PDB not found : cache*d:\symcache
                Unable to locate the .pdb file in this location

如何确定Microsoft符号服务器是否可用?如果它不可用,如何联系他们?

2 个答案:

答案 0 :(得分:2)

如您所见,服务器本身可用。它使用HTTP 404代码进行响应。

您可以访问Microsoft服务器上的root pagepingme.txt文件来查看可用性。对于后者,请注意您在浏览器中看不到任何内容,因为它是一个0字节的文件。

如果找不到符号,服务器很慢甚至没有响应,我看到了与微软联系的愿望。但是,我从来没有偶然发现一个官方的电子邮件地址。有潜伏的人直接与微软联系,例如Sasha Goldshtein,Brian Rasmussen,Steve Johnson等人。如果需要,这些将注意到中断并通知Microsoft。

如果有官方地址,我猜责任人员充斥着误报,所以我完全明白这些信息不是公开的。我还希望Microsoft员工自己使用符号服务器,因此他们可能会在您报告之前注意到它。

答案 1 :(得分:1)

this page上报告缺失符号的官方电子邮件地址为<option value="5 Days" selected="selected">5 Days</option> 。新补丁文件的符号通常在每个补丁星期二后的1周内提供,因此如果文件最近更新,您可能需要等待几天才能联系它们。

顺便说一下,你应该使用https://msdl.microsoft.com/download/symbols。 [1]

[1] https://docs.microsoft.com/en-us/windows/desktop/DxTechArts/debugging-with-symbols#using-the-microsoft-symbol-server