none
vs2008 调试.net framework的问题 RRS feed

答案

  • 如果hotfix更新过某个dll的话,那么符号文件便会过期,即此网站http://referencesource.microsoft.com/netframework.aspx上的符号文件好像不会随着部分更新去更新对应的.NET Framework dll的符号文件。因为我对此网站的内容更新部分不是很了解,但是就我看到的和平是使用来看,它一般只包含一个.Net Framework库一个版本的最初版本的符号文件。

    我曾写过一篇blog是讨论此问题的,不过是用英文,而且在国内你要是看的话也许会需要国外的vpn: http://mikedoszhang.blogspot.com/2011/10/visual-studio-debugger-net-framework.html

    如果别的程序集的符号可以正常加载的话,那么可以确定是由于mscorlib文件版本与服务器端符号文件版本不符合所致,你也可以看文件的修改日期。

    一种方法是到别的机器上拷贝一个原版本的mscorlib.dll替换本机的,但我感觉对于mscorlib文件的替换会对整个系统的.net程序有影响,所以不建议使用,如果是别的类库文件,倒是没太大问题。

    另一个方法便是使用像Reflector之类的第三方工具反编译对应的类库,生成现在版本的符号文件供你进行调试。

    如果你只是想阅读代码,而不是调试的话,那你可以直接到第一个连接里面下载离线版本来查看,或者用Reflector之类的工具进行查看dll。

    OK,为了国内朋友查看方便我复制了一份放在我的中文blog中: http://www.cnblogs.com/telnet_mike/archive/2011/11/23/2260450.html

    如有问题,尽可以拿出来讨论。

    :)


    Mike Zhang[MSFT]
    MSDN Community Support | Feedback to us
    2011年11月23日 8:06