2016-11-07 71 views
0

我想调试一个托管的核心转储,但它是绝望的,因为微软的符号服务器似乎没有包含clr.dll版本4.6.1055.0的符号。我们可以在哪里下载Windows 8的符号?

请注意以下几点:

0:022> lmvm clr 
Browse full module list 
start end  module name 
73fa0000 74651000 clr  (export symbols)  clr.dll 
    Loaded symbol image file: clr.dll 
    Image path: C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll 
    Image name: clr.dll 
    Browse all global symbols functions data 
    Timestamp:  Thu Nov 5 21:24:51 2015 (563C0F73) 
    CheckSum:   006B3E43 
    ImageSize:  006B1000 
    File version:  4.6.1055.0 
    Product version: 4.0.30319.0 
    File flags:  8 (Mask 3F) Private 
    File OS:   4 Unknown Win32 
    File type:  2.0 Dll 
    File date:  00000000.00000000 
    Translations:  0409.04b0 
    CompanyName:  Microsoft Corporation 
    ProductName:  Microsoft® .NET Framework 
    InternalName:  clr.dll 
    OriginalFilename: clr.dll 
    ProductVersion: 4.6.1055.0 
    FileVersion:  4.6.1055.0 built by: NETFXREL2 
    PrivateBuild:  DDBLD400 
    FileDescription: Microsoft .NET Runtime Common Language Runtime - WorkStation 
    LegalCopyright: © Microsoft Corporation. All rights reserved. 
    Comments:   Flavor=Retail 
0:022> .reload /f clr.dll 
SYMSRV: BYINDEX: 0xDA 
     e:\symbols 
     clr.pdb 
     1C6AD585F62042AEB690C4C105CB9B962 
SYMSRV: e:\symbols\clr.pdb\1C6AD585F62042AEB690C4C105CB9B962\clr.pdb - file not found 
SYMSRV: e:\symbols\clr.pdb\1C6AD585F62042AEB690C4C105CB9B962\clr.pdb not found 
SYMSRV: BYINDEX: 0xDB 
     http://msdl.microsoft.com/download/symbols 
     clr.pdb 
     1C6AD585F62042AEB690C4C105CB9B962 
SYMSRV: HTTPGET: /download/symbols/clr.pdb/1C6AD585F62042AEB690C4C105CB9B962/clr.pdb 
SYMSRV: HttpQueryInfo: 404 - HTTP_STATUS_NOT_FOUND 
SYMSRV: HTTPGET: /download/symbols/clr.pdb/1C6AD585F62042AEB690C4C105CB9B962/clr.pd_ 
SYMSRV: HttpQueryInfo: 404 - HTTP_STATUS_NOT_FOUND 
SYMSRV: HTTPGET: /download/symbols/clr.pdb/1C6AD585F62042AEB690C4C105CB9B962/file.ptr 
SYMSRV: HttpQueryInfo: 404 - HTTP_STATUS_NOT_FOUND 
SYMSRV: C:\ProgramData\dbg\sym\clr.pdb\1C6AD585F62042AEB690C4C105CB9B962\clr.pdb - file not found 
SYMSRV: http://msdl.microsoft.com/download/symbols/clr.pdb/1C6AD585F62042AEB690C4C105CB9B962/clr.pdb not found 
SYMSRV: C:\ProgramData\dbg\sym\clr.pdb\1C6AD585F62042AEB690C4C105CB9B962\clr.pdb not found 
DBGHELP: clr.pdb - file not found 
*** ERROR: Symbol file could not be found. Defaulted to export symbols for clr.dll - 
DBGHELP: clr - export symbols 

************* Symbol Loading Error Summary ************** 
Module name   Error 
clr     PDB not found : cache*e:\symbols 
       Unable to locate the .pdb file in this location 

         The system cannot find the file specified : srv*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. 

于是,我去了https://developer.microsoft.com/en-us/windows/hardware/download-symbols在希望下载正确的符号。但是,我怎么知道要下载哪一个?我也下载并安装了那些为Windows 10,的Windows 10的x86 32位零售符号 - 2016年9月的Windows 10和Windows Server 2016年至2016年

八月但没有包含在clr.pdb匹配GUID 1C6AD585F62042AEB690C4C105CB9B962。

我该怎么办?我相信有更好的方式下载和安装它们。

+0

在您链接到的页面上有Windows 8的符号(如果这是您的意思,则为8.1)。 –

+0

是和下载链接已经死了:-)。 – mark

+0

我猜他们*真的想要杀死8.我想如果那是一个理想的选择,那么有问题的电脑会被更新到8.1。 –

回答

1

Web档案有一个copy of the desired page from 2016-07-30,其中的文件似乎可供下载。

如果.NET 4.6的版本4.6.1055.0在发布时是操作系统的一部分,那么很有可能是您的clr.pdb包含在内。我仍然想知道为什么它不能通过官方的符号服务器获得,但它发生之前微软只是“忘了”把它放在那里。

+0

嗯,奇怪的事情。我删除了我的整个符号缓存目录,现在windbg能够下载正确的符号。去图... – mark

+0

4.6.1055.0是.net 4.6,这样的PDB不是任何MSI的一部分。来自MS的符号服务器在过去的2个月中有(perf)问题,因此有时您必须尝试几次。 – magicandre1981