无法使用 VS2008 SP1 进入 .NET Framework 源代码
不知何故,我的 VS2008 SP1 失去了进入 .NET 框架源代码的能力。 我一直在尝试使用复选框; 我已经重新删除了符号缓存文件夹十几次; 我尝试过各种调试符号服务器。
它所做的只是下载一些 .PDB 文件,但是当我尝试在 .NET 中选择堆栈框架时,我总是收到有关没有可用源的消息以及“您想查看反汇编吗”。
是什么赋予了?
添加:网络应用程序; Windows Vista 商业版 x32; .NET 3.5 SP1。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
我相信您的问题是系统上运行的 .Net 版本与从符号服务器下载的 pdb 中的图像版本不匹配。 我在 64 位 Vista 和 Win7 上也遇到过同样的问题。 我尚未找到有关如何按照说明中的指示将程序集升级到 2.0.5.xxxx 的参考。 我指定的两个操作系统上的 SP1 以及所有服务包均显示 2.0.0.xxxx 处的程序集
编辑:开始调试您拥有的任何应用程序,然后按 CTRL+ALT+U 获取模块列表。 它显示了 GAC 中的哪个程序集用于
我在博客中发布的应用程序,我认为这是对问题的更好描述。
问题博客
I believe your problem is a mismatched version of .Net running on your System compared to the image version in the pdb that downloads from the symbol server. I've had the same problem on 64 bit Vista and Win7. I have yet to find a reference for how to get the assembly to 2.0.5.xxxx as indicated in the instructions. SP1 with all service packs on the two OSs I indacated are show the assemblies at 2.0.0.xxxx
EDIT: Start debugging any app you have and Hit CTRL+ALT+U to get the module list. It shows which assembly in the GAC is being used for the application
I blogged what I think is a better description of the problem.
Blog of problem
当您进入调试模式时,打开“模块”窗口,右键单击框架组件并选择从 Microsoft 服务器加载源。
When you enter debugging mode, open the Modules window, right click on the framework component and choose to load source from the Microsoft servers.
我遇到了无法进入框架源代码的问题。
然后我进入项目设置,并将目标平台设置为“任何CPU”,然后神奇的事情发生了,默认情况下目标平台设置为“x86”。
我的平台Win7 x64,VS2010
I was having problem that i cant step into to the Framework source code.
Then i went to project settings, and set Target Platform to "Any CPU", and then magic happened, by default Target Platform setting was "x86".
My platform Win7 x64, VS2010
我在 2005 年曾多次遇到过这种情况。其中大部分都是巫毒,可能无关紧要,但这里的某个地方是答案(对我有用):
I've run into this a few times in 2005. Much of this is voodoo and probably irrelevant, but somewhere in here is the answer (that works for me):
我注意到,如果在运行网站时出现此问题,在 IIS 中启用 HTTP keep-alives 可以修复它。
I've noticed that if this issue occurs when you're running a website, enabling HTTP keep-alives in IIS can fix it.
我在不同的机器上遇到了同样的问题。
我现在在 Win7 x86 上使用 .NET v2.0.50727 CLR (3.5sp1) 得到它。
引用最多的 帖子没有帮助。
请注意,“Microsoft Symbol Server”不是具有 .NET 源的源服务器。 它托管没有源信息的 PDB(非索引)。 对于 .NET 源,我们需要来自“http://referencesource.microsoft.com/symbols”的索引 PDB并启用源服务器支持。
但有时它会停止工作。
我猜想无法下载索引的 .net PDB(如前所述)的问题与版本冲突有关。
我只能这样说:
WinServer 2008 R2 3.5.30729.4926 - 有效
Win7 x86 3.5.30729.4918 - 不起作用
我的意思是“不起作用”:尝试“从符号路径加载”(从模块或堆栈窗口,没关系)并获取选择 .pdb 的对话框(位于例如 C:\Windows\assemble\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.pdb )。 那就是VS无法下载dll的pdb。 WinSrv2008r2 上的完全相同的操作使 VS 下载 pdb 和(如果启用了源服务器支持)源。
I've encountered the same issue on different machines.
I get it right now on Win7 x86 with .NET v2.0.50727 CLR (3.5sp1).
The most quoated post doesn't help.
Notice that "Microsoft Symbol Server" is NOT source server with .NET sources. It hosts PDBs without source info (non-indexed). For .NET sources we need indexed PDBs from "http://referencesource.microsoft.com/symbols" and enable source server support.
But sometimes it stops working.
I guess the issue with being unable to download indexed .net's PDBs (as mentioned earlier) is related to version conflicts.
I can say only this:
WinServer 2008 R2 3.5.30729.4926 - works
Win7 x86 3.5.30729.4918 - doens't work
What I mean by "doesn't work": try to "load from symbols path" (from Module or Stack windows, doesn't matter) and get dialog for choosing .pdb (positioned in e.g. C:\Windows\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.pdb ). That is VS can't download pdb for dll. Absolutly the same actions on WinSrv2008r2 makes VS download pdb and (if source server support is enabled) sources.
尝试 这个指令,我一切正常!
Try this instruction, I got everything works fine!