【问题标题】:Visual Studio not remembering Break point changesVisual Studio 不记得断点更改
【发布时间】:2014-07-19 19:39:39
【问题描述】:

当我在调试时,突然说我删除了一个不再需要的断点,然后点击播放或重新启动我的程序,然后突然又回到了同一个断点。 我再次清除它保存,它又回来了。

在某些情况下我会删除一个断点,而在其他情况下我会添加一个断点。 它似乎随机地带回或删除断点,或者将现有的断点移动到错误的位置一行或两行。

我尝试重启 VS 几次,一开始可以,但时间很短。

我以前从未见过这种情况,这让我很害怕 VS 可能表现得如此糟糕。

是否有任何简单的解决方案,例如干净的断点(我宁愿不将它们全部删除)?

【问题讨论】:

  • 尝试在不调试时删除断点。我遇到了这个问题。
  • 我有同样的问题,我摆脱它的唯一方法是在某处放置一个断点,然后从Debug 菜单中选择Clear all breakpoints
  • 我尝试停止正在删除的程序,但是一旦我开始断点又回来了。如果我重新启动,我可以删除它们,但不会很长时间。
  • 似乎我的大部分断点都向上移动了一行,我修复了一个并找到了更多具有相同问题的断点。
  • @Michael Elkin,你试过我的建议了吗?

标签: c# visual-studio-2012


【解决方案1】:

根据我的经验,您描述的行为表明 .suo 文件(解决方案范围的用户选项 - 位于解决方案文件夹中)已损坏。要对此进行测试,您可以重命名文件或将文件移动到其他文件夹。之后,您的所有断点和许多其他设置(例如,打开了哪些代码文件)都将消失,但断点应该再次像往常一样运行。

编辑:

如果您不想丢失断点,可以从断点窗口导出和导入它们。我认为这是VS2012的一个新功能(我在高级版中尝试过)。

另一种可能性是您遇到了此处描述的“功能”: http://connect.microsoft.com/VisualStudio/feedback/details/391642/permanently-remove-a-breakpoint-in-visual-studio-during-debugging

【讨论】:

  • 我有几个带有 name 的 suo 文件和另一个带有 name.v11.suo 的文件,看起来像 oldname.suo。仅重命名 suo 文件没有帮助。断点在调试之外变得不可见,并且在调试时总是回来。删除所有断点似乎已经解决了所有问题。现在重新输入所有这些。
  • 据我所知,VS2010 和更早的版本会生成solutionname.suo,而 VS2012 会生成solutionname.v11.suo,并且根本不使用没有.v11 的版本。
  • 还有一件事:您是否在 VSGallery 或 Internet 上搜索过能够导入和导出断点的扩展 - 如果问题再次出现,可能会很方便。
  • .v11.suo 确实清除了所有断点。与 3+ MB 相比,新文件约为 20 kb,但在清除断点后,旧文件缩小到 100 kb 左右。使用新文件还是旧的清理文件会更好吗?
  • 嗯,.suo 文件是基于 MS OLE 结构化存储的文件,其中包含多个二进制流。您可以使用viewer 来检查它们。当这些文件导致 VS 行为异常时,我总是有一种不好的感觉,所以我更喜欢删除它们。但是,如果您在 .suo 中存储的其他设置上付出了很多努力,您可能希望获得最好的结果并保留清理后的文件...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-02-10
  • 1970-01-01
  • 2011-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多