14

不知何故,我的VS2008 SP1已经失去了进入.NET框架源代码的能力。我已经玩过复选框,但没有结束;我已经重新删除了Symbol缓存文件夹十几次;我试过各种调试符号服务器。无法用VS2008 SP1进入.NET框架源代码

它所做的只是下载一些.PDB文件,但是当我尝试在.NET中选择堆栈框架时,我总是收到关于没有可用源的消息和“是否要查看反汇编”。

什么给?

加入: Web应用程序; Windows Vista Business x32; .NET 3.5 SP1。

+0

我太多,但我从来没有SP1 – 2009-02-18 18:05:12

+0

似乎这个功能还不是很成熟,我也遇到过问题,但后来有一天,它再次工作正常使用它... – 2009-02-18 18:36:59

+0

Web应用程序,Windows窗体或服务? – devlord 2009-02-18 20:49:18

回答

3

我相信你的问题是在系统上运行的.Net的不匹配版本,与从符号服务器下载的pdb中的映像版本相比。我在64位Vista和Win7上遇到了同样的问题。我还没有找到如何使指令中所示的程序集到2.0.5.xxxx的参考。 SP1的所有服务包在我所indacated两个操作系统显示在2.0.0.xxxx的程序集

编辑:开始调试任何应用程序,并按CTRL + ALT + U获取模块列表。它显示了GAC中的哪个程序集正在用于该应用程序

我发表了我认为对问题更好的描述的博客。 Blog of problem

1

当您进入调试模式时,打开模块窗口,右键单击框架组件并选择从Microsoft服务器加载源代码。

+0

与右键单击堆栈帧并告诉它从Microsoft服务器加载源不是相同的吗?如果是这样,那么它不起作用。但是当我回来工作时,我会明天尝试这个建议。 – 2009-02-18 19:01:45

0

我在2005年这在很大程度上碰上这几次是巫术,可能无关紧要,但无一例外这里是答案(为我的作品):

  1. 终止服务
  2. 删除任何本地.pdbs
  3. 摆脱(例如)C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files中的临时文件(无论是项目相关文件还是全部)
  4. 重新启动服务
  5. 如果没有工作,重复1-4,重新启动,然后尝试
0

我注意到,如果当您运行网站时发生此问题,启用IIS中的HTTP保留可以修复它。

0

我在不同的机器上遇到同样的问题。 我现在在Win7 x86上使用.NET v2.0.50727 CLR(3.5sp1)。 最多的post没有帮助。 请注意,“Microsoft Symbol Server”不是带有.NET源代码的源服务器。它托管没有源信息的PDB(非索引)。对于.NET源,我们需要从“http://referencesource.microsoft.com/symbols”索引PDB并启用源服务器支持。 但有时它停止工作。 我猜无法下载索引.net的PDB(如前所述)与版本冲突有关。

我能说的只有这个:

WinServer 2008 R2 3.5.30729.4926 - 工程

Win7的86 3.5.30729.4918 - 好好尝试一下工作

我的意思是 “不工作” 是什么:尝试“从符号路径加载”(从模块或堆栈窗口,无所谓),并获得对话框选择.pdb(位于例如C:\ Windows \程序集\ GAC_32 \ mscorlib \ 2.0.0.0__b77a5c561934e089 \ mscorlib。 pdb)。这是VS无法下载dll的pdb。绝对相同的WinSrv2008r2操作使VS下载pdb和(如果启用了源服务器支持)源。

1

我有问题,我不能步入框架源代码。

然后,我去了项目设置,并将目标平台设置为“任何CPU”,然后魔术发生了,默认情况下目标平台设置为“x86”。

我的平台Win7的X64,VS2010