【问题标题】:breakpoint will not currently be hit, why not?断点目前不会被命中,为什么不呢?
【发布时间】:2010-11-30 22:08:30
【问题描述】:

有时我会收到断点不会被命中的消息,并且不会加载任何符号。

vs.net 中的红色图标变色,调试模式不起作用。

这是什么原因?

【问题讨论】:

  • 看我的回答。仅供参考:在我的链接中执行每个项目符号(修复尝试)后,您必须实际启动一个新进程(对于您要附加的内容)并实际再次运行该程序(即:nunit、IIS 站点等)。在图标再次变为红色之前回答(或任何这些答案)。否则图标将保持黄色。

标签: visual-studio debugging


【解决方案1】:

您可能正在发布模式下运行您的项目。如果是,则切换到调试模式

【讨论】:

  • 哦,你让我上这个
【解决方案2】:
  1. 仅用于管理代码 - 在以下站点上有一个很好的答案来解决这个问题: http://geekswithblogs.net/dbutscher/archive/2007/06/26/113472.aspx
  2. 对于本机 + 托管代码 - 在启动解决方案属性 -> 调试选项卡中 确保选中“启用非托管代码调试”复选框

【讨论】:

  • Debug > Windows > Modules 窗口是我需要弄清楚它正在寻找的 dll 在 GAC 中而不是在我的解决方案中。谢谢!
【解决方案3】:

来自菲利普·卡尼的Visual studio debugging issue with files of the same name

执行下面链接中的每个项目符号一次一个,但对每个尝试重复我的步骤。

  1. 在 Visual Studio 中停止调试(按红色方形图标)

  2. 清洁解决方案

  3. 构建解决方案

  4. 工具 > 附加到进程(或从调试开始)

  5. 启动您要附加的程序,并运行它以使您的代码受到影响

    • 如果附加到nunit.exe,然后打开 NUnit 并运行测试,这样你的断点就会被命中

    • 如果附加到w3wp.exe(IIS 站点),则在浏览器中打开您的站点并转到将触发断点的页面

【讨论】:

    【解决方案4】:

    在尝试了几个建议的修复后,我执行了以下操作以使其正常工作。

    1. 在解决方案资源管理器中右键单击我的项目并选择“属性”。
    2. 转到“Web”部分并确保“开始操作”设置为“当前页面”。

    花了 3 1/2 小时...我现在要去喝一杯。

    【讨论】:

      【解决方案5】:

      在“Debug/Release”下拉列表旁边,还有一个带有“Any CPU/Configuration Manager...”的下拉列表。单击“配置管理器...”,您将看到您的一些项目可能处于发布模式。将它们全部更改为 Debug。

      【讨论】:

        【解决方案6】:

        如果符号字段与程序集不同(远程调试),或者没有“直接路径”,则可能会发生这种情况,因此程序集尚未加载,但可能会使用反射加载所需程序集并在运行时间。

        【讨论】:

          【解决方案7】:

          如果调试器出于某种原因未附加到进程,也会发生这种情况。如果是这种情况,您始终可以转到调试 - 附加到进程...并选择正确的进程。一旦 VS 确定可以命中断点,您的断点应该会恢复正常。

          【讨论】:

            【解决方案8】:

            我通过选择 Automatic:Native Code 解决了这个问题附加到进程" form

            【讨论】:

              【解决方案9】:

              当您将鼠标悬停在禁用的断点上时会显示什么?它通常会告诉你问题所在。我最喜欢的是旧的“源代码已过时”,尤其是在我调试 DLL 时。另一个最喜欢的是当您正在查看的文件不是您正在调试的文件时(另一个文件夹中的副本?)。如果在这种情况下您可以断点调用例程而不是被调用者,则进入被调用者将强制 VS 打开“正确”源文件,您将能够设置断点。令人困惑,我通常在这一点上对 VS 发誓,这似乎有帮助。

              【讨论】:

                【解决方案10】:

                我不喜欢玩刀,但唯一对我有用的是编辑 .csproj 文件本身。因此,卸载项目文件,通过剪切和粘贴三个 asp.net 文件对其进行编辑,使它们一起在 ItemGroup 中。但是,有时需要更进一步,如下所述:http://carnotaurus.tumblr.com/post/4130422114/visual-studio-debugging-issue-with-files-of-the-same - 另外,我列出了其他对我不起作用的建议解决方案。希望对你有帮助。

                【讨论】:

                  【解决方案11】:

                  我遇到了同样的问题。我知道通常是如果构建版本不同,并且某些内容不匹配。我清理了我的项目,重建了它,然后进行了部署,这让一切恢复了同步。

                  【讨论】:

                    【解决方案12】:

                    我已经对部署的应用程序和服务进行了测试,我发现如果部署的代码与 Visual Studio 中的代码不同,那么断点将不会命中。即使是很小的更改也会影响并且断点不会命中。因此,最好在 vs 代码以及部署应用程序或服务中调试相同的版本。

                    【讨论】:

                      猜你喜欢
                      • 1970-01-01
                      • 2018-01-27
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2015-06-23
                      相关资源
                      最近更新 更多