VS2008单步调试时出错,原来的断点处显示一个空心圆加一个右下角的警告图标,调试无效,会直接跳过该断点。鼠标放在该断点上有如下提示:
The breakpoint will not currently be hit. The source code is different from the original version
网上搜了一下原因,有人写:
昨天对dnn跟踪调试的时,设了断点后运行到断点处总提示“The breakpoint will not currently be hit. The source code is different from the original version”,搜了一下,原因是:
The problem you're running into is caused by a new feature in the compilers and debugger to keep track of checksums for source files. Using this mechanism we can tell if the source file we're displaying in the debugger matches the original file used to build the application.
When you change a source file while debugging, and Edit and Continue is unavailable or disabled, you'll see warnings about the source not matching. Since Beta 2 we've improved the error message (no longer a Yes/No dialog, just a warning with an OK button). We've also changed the behavior so your breakpoints will no longer show this message when a source file does not match.
To clarify what the message is asking you to do: right-click on the breakpoint in question, and you should see a Location item. On the resulting dialog you should see an override checkbox which will get rid of the message you're seeing when you hover over your breakpoints. Or you could go to Tools->Options->Debugging->General and uncheck the "Require source to exactly match..." option, which will turn off all checksum functionality in the debugger.
偶的英语不太好,大致上看明白了,从菜单栏的 Tools->Options->Debugging->General
取消 "Require source to exactly match..." 项的选择。
还有两个可能是
1. 打开项目属性,选择调试选项卡,将“启用非托管代码调试”一项钩上。
2. 由于Terminal Services 这个服务被禁用了,将这个服务设为自动,将这个服务启动。
我试了一下,确实就好了。
最后我还是想办法解决了这个问题,方法是先取消“Require source files to exactly match the original version”选项,然后修改一下程序,再在该文件设断点调试一下,然后重新选定“Require source files to exactly……”选项,这样就好了。
最后我想,断点调试失效的原因应该是我当时调试中间的时候顺便改写了程序,导致Visual Studio 2008对此进行了记录,而后面好像又强行关掉了Visual Studio 2008,导致记录没有被清除,后面就老是通不过源文件和debbuger编译时文件的同步检测。而后面我重新设断点调试和重新选中同步测试选项相当于把错误记录又清除掉了,所以就修复啦。
分享到:
相关推荐
标题中的知识点是:Unity3D程序进行Android真机断点调试。这是Unity3D开发者们常常需要进行的一项工作,主要是为了能够更加精确的找到程序运行时可能出现的问题,并进行解决。断点调试是一种有效的调试方法,可以在...
VS 2005 变量跟踪及断点调试 在 VS 2005 中,变量跟踪和断点调试是两个紧密相关的概念。变量跟踪是指在程序调试过程中,追踪变量的值的变化,以便更好地理解程序的执行过程。断点调试则是指在程序执行过程中,设置...
5. 断点调试需要在 Debug 模式下启动程序,并在断点处暂停程序的执行。 Arm 平台 qt creator 断点调试是指在 Ubuntu 系统中使用 Qt Creator 实现 Arm 平台的断点调试。断点调试是指在程序执行过程中,设置断点,并...
标题“vc做的ocx控件,ie下断点调试问题”所描述的情况是一个典型的问题,即OCX控件在VC(Visual C++)的测试容器中可以正常进行断点调试,但当它被嵌入到IE浏览器中时,无法进入断点。这通常涉及到调试器的设置、IE...
为了提高开发效率和代码质量,开发者需要掌握如何在WebStorm和VSCode中进行断点调试Vue项目。本文将详细阐述这两种主流IDE的Vue断点调试技术。 首先,我们来了解什么是断点调试。断点调试是一种强大的开发工具,它...
本文将详细介绍如何在VSCode环境下配置Skynet的断点调试。 首先,我们需要确保已经安装了VSCode,它是一款强大的、跨平台的代码编辑器,支持多种编程语言,并提供了丰富的插件生态系统。接下来,我们需要安装`...
然而,在使用Visual Studio (VS) 进行BMP应用的模拟器调试时,可能会遇到一个常见问题:设置的断点无法正常工作,导致程序无法在预期的位置暂停,从而无法进行单步跟踪和其他调试操作。 问题的核心在于BMP提供的...
- 在VS2008中选择`调试(Debug)`菜单下的`新建断点(New Breakpoint)`,然后选择`新建数据断点(New Data Breakpoint)`。 - 在弹出的对话框中输入目标地址,如`0x12345678`。 3. **设置条件表达式:** - 对于数据...
Java 断点调试的各种方法 断点调试是 Java 程序员经常用的调试技术,通过设置断点,可以在代码运行到某一特定位置时停止,方便开发者检查和 debug 代码。下面将详细介绍 Java 断点调试的各种方法。 1. 条件断点 ...
本文目录概述调试方法第一步:添加测试代码第二步:添加断点第三步:调试show Execution pointStep OverStep IntoForce Step IntoStep Outrun to Cursor查看断点修改变量值停止调试 概述 众所周知,断点调试是一个合格...
### 解决安装IE8后VS2005无法调试的问题 在进行软件开发的过程中,我们经常会遇到各种各样的问题,特别是在使用旧版本的工具时。本文将详细介绍如何解决安装IE8浏览器之后,Visual Studio 2005(简称VS2005)中的...
在开发Java应用程序,特别是使用WebLogic服务器作为应用服务器时,本地断点调试是一个非常重要的工具。它可以帮助开发者在运行过程中定位并解决问题,提高代码质量。本文将详细介绍如何配置Eclipse集成开发环境(IDE...
php5.6 下用zenddebugger单步断点调试代码2php5.6 下用zenddebugger单步断点调试代码2
### Eclipse 断点调试基础知识详解 #### 一、Eclipse 断点调试概述 在软件开发过程中,程序的调试是一项非常重要的工作。通过调试,开发者可以深入理解代码的执行流程,定位并修复程序中的错误。Eclipse 是一款...
在VS2008中设置高级断点的方法。如设置当某个变量的值改变时的断点,设置某一段内存值发生变化时的断点。
前端vue+vscode断点调试详解 chrome,f12,Sources-Filesystem添加文件夹映射,即映射到本地项目的源码中进行断点调试 SourceMap能够让压缩翻译过的最终版的各种文件与原来未压缩过的文件对应起来
VS2008网络连接并调试WinCE程序的知识点涵盖以下几个主要方面: 一、WinCE模拟器的配置与启动 1. 启动WinCE模拟器:首先,需要启动WinCE模拟器,以便进行后续的调试操作。 2. 配置仿真程序属性:在模拟器运行后,...
在调试模式下,程序会跳过main函数的入口,直到遇到第一个断点才开始执行。 4. **程序暂停**:当程序在断点处暂停时,你可以查看当前变量的值,使用“下一步”(F8)命令逐行执行代码,或者使用“步入”(F7)进入...