2011-10-12 55 views
12

我真的有问题,我有一个VS 2010的解决方案,它突然停止调试引用的项目,我只能调试启动项目,但不作为参考添加。这很奇怪,因为我创建了一个新的解决方案,添加了两个项目,然后我都调试成功了,这样做是为了查看我的VS配置是否错误,但nop,这是在这个特定的解决方案,不允许我调试引用的项目。visual studio 2010断点没有符号已被加载

我已阅读此论坛和其他来源(如Microsoft)的所有可能的解决方案。如果我去菜单调试 - >窗口 - >模块我想调试的不在列表中。 screen 1 my running modules

所以,我读了微软的网页说如何手动加载符号,我做了以下内容:

要指定符号文件位于

在工具菜单目录,选择选项。

在选项对话框中,打开调试节点,然后单击 符号。

在符号页面上,有一个框显示符号文件(.pdb) 位置。盒子上方有四个图标。

单击文件夹图标。

可编辑文本出现在符号文件(.pdb)位置框中。

输入目录路径。声明的完成有助于您找到正确的格式 。

如果您正在进行远程调试,托管代码的符号文件和符号服务器 缓存必须位于远程计算机上。用于本地代码的符号 文件和符号服务器缓存必须位于本地计算机的 上。

如果您在远程符号服务器上使用符号,您可以通过指定一个本地目录来将 复制到符号上,从而提高 的性能。为此,请在此目录的 框中的缓存符号中键入路径。如果您正在远程计算机上调试程序,则高速缓存目录 将引用远程计算机上的目录。

单击确定。

这没有奏效,我仍然无法看到我想加载的模块,所以..任何想法我的朋友?

+4

请不要使用JPEG截图。 – SLaks

回答

1

我解决了,答案可能不好我很确定,但说实话我不得不卸载和重新安装应用程序。像魅力一样工作。我知道,这需要很多时间,但我已经花时间试图解决这个问题,所以...

2

这通常意味着您尝试调试的程序集已过期(您的源程序与用于创建程序集的源程序不同)。我看到很多问题之一是,如果解决方案由于错误而无法建立,但是您没有注意到并最终调试上一次成功的构建。确保所有项目都重建并成功。

+0

好吧,我会检查,让我看看... –

1

可能是因为解决方案配置出问题了。确保你的调试和调试信息检查配置

5

在这种情况下的圣三一:重建所有,重新启动VS,重新启动计算机。

  • 重建所有:确保一切都是最新的。如果它不起作用:
  • 重新启动工作室:在某些情况下,调试符号服务被卡住,不会刷新所加载的符号和新编译的符号。在大多数情况下,重新启动VS将解决问题。如果不是:
  • 重新启动计算机:蛮力但有效。

此外,你应该检查你是否构建发射可调组件。

+1

你忘了清洁,并删除所有临时文件。大声笑 –

+0

尝试修复而不是修补! – jim

0

所以我修好了,我知道不是最好的解决方案,但它的工作。由于这种行为非常奇怪,我必须从头开始创建一个新的解决方案,然后创建所有项目/图层,然后逐个手动复制所有类,确保可以调试每个项目。

就这样,它花了我1.5小时,但我终于做到了。我知道,我知道,这听起来并不像解决方案,但对我来说...

9

还有一件事要检查,只是要清楚:确保您的配置设置为'调试'和不是'发布'。您可以在'Release'模式下调试启动项目,但不能调用引用的类库。

0

遇到同样的问题,我可以修复它 1.检查一切到源代码管理。 2.删除所有本地文件 3.从源代码管理中获取所有内容。

这解决了这个问题,现在解决方案似乎也能更快建立。

0

如果打开由另一个用户(如老师)创建的代码,请确保.htm文件脚本匹配的.js文件名即src="scripts/Objects.js"如果您的项目/文件名是Objects.js

0

我刚碰到这个问题。

为了解决这个问题,我所做的:

Build -> Clean 
Build -> Build <Project Name> 

然后我开始调试项目和正确装入符号。

5

我解决了这个类似如下:

  • 转到项目属性页。
  • 在左侧转到Build选项卡。
  • 搜索/向下滚动到“生成序列化程序集”
  • 在本文的前面有“高级...”按钮:单击它。
  • 确保您的调试信息为full
  • 点击确定,你就完成了。
0

我有一个类似的问题,我在web项目中使用了一个configtransform。即使我将我的configtransform设置为不删除编译debug = true,并启用了定义DEBUG常量,但我无法在某种编译模式下生成调试符号。

原来,有一些属性定义是否生成中的csproj文件调试符号。卸载项目并找到与编译模式匹配的PropertyGroup元素。

然后请确保您有下列属性的PropertyGroup

<DebugSymbols>true</DebugSymbols> 
<DebugType>full</DebugType> 
<Optimize>false</Optimize> 

内,如果这是你想要使用的网络部署来发布一个网站,我相信的,你还需要下面的属性集。

<ExcludeGeneratedDebugSymbol>false</ExcludeGeneratedDebugSymbol> 
0

我因为在工具得到了在VS2012这种行为 - >选项 - >调试 - >常规,在“托管C++兼容模式”被打开。该项目混合使用C#/ C++ com interop。

0

今天有同样的问题,尝试了一切建议在这里,但没有奏效。无论如何,我的模块并没有出现在Debug-> Modules窗口中。

然而,放弃后,我发现了一些有趣的事情:在整个应用程序导航,某些模块开始“对飞”在模块窗口中加载。我假设代码达到了需要这些模块的部分,并且Visual Studio很聪明并加载了它们。

我相信这是某种形式从Visual Studio的优化,以按需加载模块。其实,这只是让我有些沮丧的时候发现它。因此,如果您在启动调试器时查看Debug-> Modules,则某些相关程序集将不会被加载 - 即使您100%确定存在相关性。

希望这有助于其他人在我的情况。

0

也许这会帮助someome ...

今天我回到了一个解决方案开始两周前包含Web服务和测试应用程序。事实证明,我已经发布了Web服务到另一个服务器(这是我忘记了,但VS并没有如此有帮助地记住),这意味着当启动测试应用程序运行调试,但它正在调用远程Web服务。在测试应用项目

的修复...

  1. 展开服务引用

  2. 在Web服务引用单击鼠标右键,选择“配置服务引用”

  3. 在客户区域,指向地址本地主机如:

    http://localhost:51746/MyWebService.asmx 
    
1

停止和重新启动VS 2010的想法为我工作了同样的问题。然而,我不得不打开一个不同的和不相关的解决方案,关闭这个解决方案,并用调试符号问题重新打开解决方案。 一切都很好。 希望这有助于。

0

有点晚了这里,但我只是用Google搜索了类似的问题,我直奔这里。我正在使用VS2010(C++),并且在发布版本中只有一个类似的问题。 我的修复得到的符号加载是要求VS2010创建并加载它们:-)

SolutionExplorer-> ProjectName - 右键单击​​并选择属性。 在属性页面顶部,确认您要更改属性的正确配置和平台,对于我来说,我想要Release和x64。打开链接器 - >调试,在属性窗格中有一个选项“生成调试信息” - 将其更改为“是”。重新生成和调试符号被生成并加载用于调试。您可以选择对解决方案中的每个项目执行此操作。

希望它有帮助。

[编辑]请注意,由于的优化和可能的汇编代码重新排序即是没有意义在某些情况下的值。[/编辑]

0

我有这个问题。我试了一切,重建所有,重新启动VS,重新启动机器等。我终于明白了,这个问题非常讨厌。包含“调试”,“发布”的调试下拉菜单在我解决此问题的整个过程中都显示“调试”。不过,它似乎正在试图释放。由于它已经设置为调试,我打开下拉菜单,选择调试,然后再次启动和符号加载成功。 再次,这是尝试重新启动计算机和一切后。而下载视觉工作室拖放默认为“调试”,但我不得不从下拉列表中选择它。 :@

0

我只是有这个问题与VS2013。

该项目将建立,但没有符号文件将显示在模块面板。

我结束了复制源代码到另一个文件夹,然后通过git的回滚该项目以前的版本,然后在源代码只(没有项目,垃圾桶,OBJ,等等)复制。

然后清洗和重建,中提琴,符号都回来了,我没有失去任何代码。

它必须破坏项目文件或其他东西。

0

在我来说,我有2个项目的解决方案中,NET Web应用程序和类库(由Web应用程序中引用)。

的问题:在这两个项目(项目>属性>应用),我对大会名称相同的值。我认为这是加载PDB的依赖性(类库项目)导致冲突。

解决方案:更改Web App中Assembly的名称,清理并重建。

相关问题