VS2010程序调试】的更多相关文章

http://blog.csdn.net/kingzone_2008/article/details/8133048 调试初识及实例.…
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip, 不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0-vs2010.exe,这些版本都只是动态编译的,不是我们 所需要的.只有用源码包才能做真正的纯静态编译,如果用Qt官网已编译的标准库.exe文件进行编译,有可能出现各种错误,而且编译后的文件巨大,我当时 就在这里绕了很大的弯子,请童鞋们注意啦!!可能有些老鸟会笑话,但我本着最严肃的态度告诉菜鸟们,…
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip,不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0-vs2010.exe,这些版本都只是动态编译的,不是我们所需要的.只有用源码包才能做真正的纯静态编译,如果用Qt官网已编译的标准库.exe文件进行编译,有可能出现各种错误,而且编译后的文件巨大,我当时就在这里绕了很大的弯子,请童鞋们注意啦!!可能有些老鸟会笑话,但我本着最严肃的态度告诉菜鸟们,上网查…
VS2010如何进行程序调试 一.前言 对于初步学习C++的朋友,程序的调试是一项必备的技能.尤其是像C++这样难学的语言,程序调试的基本方法更是至关重要.毕竟,谁也不想自己幸幸苦苦一天敲出来的代码就因为几个微小的bug就被废弃.如何从繁杂的代码中找出微小的bug,这就是我们今天学习的目的.本文利用VS2010作为IDE,但讲解的概念和方法是通用的,适用于所有IDE. 二.基本概念 有这么几个概念是我们课程开始之前必须要清楚的,分别是:断点.逐过程.逐语句.跳出.继续,读者不妨先自己想一想这几个…
VS2010+ AutoCAD 2012开发调试过程中,发现普通的Class里面的断点是可以跟踪到的,可能是创建自定义的Form做界面是,Form1.cs中的代码断点却不管用.原因在于AutoCAD的纤程(Fiber).是的,是纤程(Fiber)而不是线程(Thread).VS2010的调试器和AutoCAD的纤程一起工作时会有问题.解决的办法就是关闭AutoCAD纤程.通过系统环境变量FIBERWORLD来查看当前纤程是否打开,如果是1,则可以通过把系统环境变量NEXTFIBERWORLD设为…
探索调试器下断点的原理 在Windows上做开发的程序猿们都知道,x86架构处理器有一条特殊的指令——int 3,也就是机器码0xCC,用于调试所用,当程序执行到int 3的时候会中断到调试器,如果程序不处于调试状态则会弹出一个错误信息,之后程序就结束.使用VC开发程序时,在Debug版本的程序中,编译器会向函数栈帧中填充大量的0xCC,用于调试使用.因此,经常我们的程序发生缓冲区溢出时,会看到大量的“烫烫烫…”,这是因为“烫”的编码正是两个0xCC. 那么?为什么int 3可以让程序中断到调试…
阅读目录: 1.背景介绍 2.基本原理(Windows调试工具箱..NET调试扩展SOS.DLL.SOSEX.DLL) 2.1.Windows调试工具箱 2.2..NET调试扩展包,SOS.DLL.SOSEX.DLL 2.3.调试系统的基本流程及架构(.NETDAC概念.mscordacwks.dll) 2.4.VisualStudio中集成扩展调试(更加细粒度的调试程序) 3.调试程序类型(客户端程序.服务端程序) 4.调试方式及场景 4.1.本机调试(Attach Process,调试器启动…
场景:程序调试运行,打开含spread组件的窗体时如下: 解决: 将spread组件拖到某一个窗体后,会在properties中出现license文件.再运行,OK! 注意: license文件一定是在主程序工程中,而不是其它工程中!!!…
无论什么样的程序开发过程中,出现错误都是不可避免的,一般情况下,语法错误会被开发环境检测到,并能及时的提示我们错误的位置以及修改的方法,但是逻辑错误就不是那么容易被发现了,通常逻辑错误的定位和分析是一件非常困难的事情. 所以在学习Android过程中,继学习它的程序结构,写了HelloWorld和一些简单的界面布局程序之后,我选择研究一下它的调试工具.LogCat就是其中一个.LogCat是用来获取系统日志信息的工具,它可以捕获的信息包括Dalvik虚拟机产生的信息,进程信息,ActivityM…
VS2010 F5调试时出现 尝试运行项目时出错:未捕获通过反射调用的方法引发的异常 两个解决方法:1) 打开项目属性,选择调试选项卡,将“启用非托管代码调试”一项钩上.2) 打开项目属性,选择调试选项卡,将“启用Visual Studio宿主进程“一项钩掉.…
3.8  MATLAB程序的调试和优化 在MATLAB的程序调试过程中,不仅要求程序能够满足设计者的设计需求,而且还要求程序调试能够优化程序的性能,这样使得程序调试有时比程序设计更为复杂.MATLAB提供了强大的程序调试功能,合理的运用MATLAB提供的程序调试工具尤其重要.本节从MATLAB程序调试的方法和过程开始介绍,先让用户懂得合理运用MATLAB的程序调试功能,再总结MATLAB程序优化的方法,从而达到实现提高程序性能的目的. 3.8.1  MATLAB程序调试方法和过程(1) MATL…
写过程序分布式代码的人都知道,分布式的程序是比较难以调试的,但是也不是不可以调试,对于Hadoop分布式集群来说,在其上面运行的是mapreduce程序,因此,有时候写好了mapreduce程序之后,执行结果发现跟自己想要的结果不一样,但是有没有报错,此时就很难发现问题,查找问题的方法之一就是对程序进行调试,跟踪代码的执行,找出问题的所在.那么对于Hadoop的Mapreduce是如何进行调试的呢? 毫无疑问当然是借助eclipse这个强大的工具.具体方式如下: 说明:由于公司服务器上部署的是C…
  VS2010启动调试时老是提示正在下载公共符号,下载一些.dll文件,点取消后也能继续调试,但特别慢. 解决方法:工具—选项,或者调试—选项和设置,将调试下的“启用 .NET Framework 源代码单步执行 "前面的对勾去掉就行.…
Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况. 本文为大家讲解的是在linux下xdebug的安装和配置方法,感兴趣的同学参考下. xdebug简介 Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况. xdebug安装 首先让php错误显示,只需要修改php.ini当中的2条指令,把 displayerrors和htmlerrors都设置为On,如下所示 h…
一:断点调试 用eclipse开发android程序的时,跟VS一样是可以断点单步调试的.步骤如下.1 设置断点:在编码窗体的左边框上用鼠标双击,或者右键点击菜单,选择 Toggle Breakpoint菜单项即可. 2 在debug模式下运行程序进入调试状态:通过点击工具栏上的小虫按钮或者是在项目右键点击然后选择Debug As,Android Application菜单,启动程序的调试模式.第一次运行调试模式eclipse会弹出如下确认窗口 当程序运行到你的断点地方时就会停下,这时可以按照下…
调试一个程序主要用到的功能: 启动程序 设置函数断点 设置数据断点 单步执行 查看内存值 修改内存值 linux下的gdb,和vxworks下的shell 虽然使用方式和调试命令略有不同,但是都能满足上述程序调试的基本功能.为了更好的理解和记忆,下面给出两者的差异点. 表1 功能 vxworks shell linux gdb 说明 启动程序 sp ts tr c start run finish c   设置函数断点 b bd bd all b <line/num/fun> delete b…
一:断点调试 用eclipse开发android程序的时,跟VS一样是可以断点单步调试的.步骤如下.1 设置断点:在编码窗体的左边框上用鼠标双击,或者右键点击菜单,选择 Toggle Breakpoint菜单项即可. 2 在debug模式下运行程序进入调试状态:通过点击工具栏上的小虫按钮或者是在项目右键点击然后选择Debug As,Android Application菜单,启动程序的调试模式.第一次运行调试模式eclipse会弹出如下确认窗口 当程序运行到你的断点地方时就会停下,这时可以按照下…
转载:http://os.51cto.com/art/201006/207230.htm 参考:<Linux shell 脚本攻略>Page22-23 Linux bash程序在程序员的使用中十分重要,尤其是和shell程序的使用中Linux bash程序的调试格外重要.在进行调试的过程中有许多小技术点需要我们注意.下面的门就来详细的学习下Linux Bash命令关于程序调试详解. Linux bash程序调试的Linux Bash命令 在编程过程中难免会出错,有的时候,调试程序比编写程序花费…
上一讲中我们学习了几种常用的程序调试方法,这一讲中将介绍Keil提供各种窗口如输出窗口.观察窗口.存储器窗口.反汇编窗口.串行窗口等的用途,以及这些窗口的使用方法,并通过实例介绍这些窗口在调试中的使用. 一.程序调试时的常用窗口 Keil软件在调试程序时提供了多个窗口,主要包括输出窗口(Output Windows).观察窗口(Watch&Call Statck Windows).存储器窗口(Memory Window).反汇编窗口(Dissambly Window)串行窗口(Serial Wi…
调试一般都是在发生错误与意外的情况下使用的.如果程序能正常执行,调试很多时候都是用不上的.所以,最高效率的程序开发还是程序员自己做好规范,而不是指望调试来解决问题. 单片机的程序调试分为两种,一种是使用软件模拟调试,第二种是硬件调试. 使用软件模拟调试,就是用计算机去模拟单片机的指令执行,并虚拟单片机片内资源,从而实现调试的目的.但是软件调试存在一些问题,不可能像真正的单片机运行环境那样执行的指令能在同一个时间完成(往往比单片机慢).软件调试只能是一种初步的,小型工程的调试,比如一个只有几百上千…
开发工具:MyEclipse,Eclipse等. 程序调试:  (1)断点:设置断点是程序调试中必不可少的手段,Java调试器每次遇到程序断点时都会将当前线程挂起,即暂停当前程序的运行.(在Eclipse中双击代码所在行设置断点) (2)以调试方式运行Java程序 (3)程序调试 单步跳过:运行单独的一行程序代码,但是不进入调用方法的内部,然后跳到下一个可执行点并暂挂线程. 单步跳入:跳入调用方法或对象的内部单步执行程序并暂挂线程. (4)测试结果…
1/30 第八章Python异常处理结构与程序调试 异常处理 try-except结构 try: try块 except Exception: except块 try-except-else结构 try: try块 except Exception: except块 else: #如果都没捕获到 else块 带有多个except的try结构 try: try块 except Exception: except块 except Exception2: except块 else: #如果都没捕获到…
IE升级到10.0,VS2010启动调试时报“未能将脚本调试器附加到计算机..” 今天,在调试代码时,调试器弹出提示框,报:未能将脚本调试器附加到计算机XXX上的进程iexplore.exe . 已附加了一个调试器”.启动调试失败. 突然,想起想升级IE 到10,想到有可能是升级IE造成的.因为ie10启动的时候会加载两个iexplorer.exe进程. 解决办法:以管理员身份打开CMD,运行: win7(32位):  regsvr32 "%ProgramFiles%\Internet Expl…
Myeclipse程序调试快捷键及步骤详解: 调试快捷键    Eclipse中有如下一些和运行调试相关的快捷键.    1. [Ctrl+Shift+B]:在当前行设置断点或取消设置的断点.    2. [F11]:调试最后一次执行的程序.    3. [Ctrl+F11]:运行最后一次执行的程序.    4. [F5]:跟踪到方法中,当程序执行到某方法时,可以按[F5]键跟踪到方法中.    5. [F6]:单步执行程序.    6. [F7]:执行完方法,返回到调用此方法的后一条语句.  …
React学习笔记 二 程序调试   前面我们搭建好了React的基本开发环境,可以编写基本的React js程序了.但完成的开发环境肯定包含调试器,怎么调试用React编写的JS程序呢?有浏览器,比如Firefox,Chrome,按F12,找到javaScript脚本,打断点,然后调试.这是调试JavaScript的基本环境,但是React由于使用了ES6的语法,在浏览器中经过Babel解析,或者在发布前就将React的代码编译成了ES5规范的JavaScript代码,我们调试时怎么能调试到自…
3. GDB的实现 GDB是GNU发布的一个强大的程序调试工具,用以调试C/C++程序.可以使程序员在程序运行的时候观察程序在内存/寄存器中的使用情况.它的实现也是基于ptrace系统调用来完成的. 其原理是利用ptrace系统调用,在被调试程序和gdb之间建立跟踪关系.然后所有发送给被调试程序的信号(除SIGKILL)都会被gdb截 获,gdb根据截获的信号,查看被调试程序相应的内存地址,并控制被调试的程序继续运行.GDB常用的使用方法有断点设置和单步跟踪,接下来我们来分析一 下他们是如何实现…
第9章 异常处理及程序调试 9.1 异常概述 在程序运行过程中,经常会遇到各种各样的错误,这些错误统称为“异常”.这些异常有的是由于开发者将关键字敲错导致的,这类错误多数产生的是SyntaxError:invalid syntax(无效的语法),这将直接导致程序不能运行.这类异常是显式的,在开发阶段很容易被发现.还有一类是隐式的,通常和使用者的操作有关. 实例01:模拟幼儿园分苹果 def division(): '''功能:分苹果''' print("\n===================…
上篇博客中给大家分享了使用Windbg进行Live Debugging: Windbg程序调试系列4-Live Debugging 本篇中我们继续,跟大家分享常见的应用程序高CPU使用率问题分析. 先说Windows下CPU使用率这个概念: CPU使用率:在任务管理器的刷新周期内CPU忙的时间与整个刷新周期的比值.默认的刷新周期是1s. 即1s内,反映出系统的CPU繁忙程度 我们打开Windows的任务管理器,可以看到CPU的使用率: 当然,这个CPU使用率是整个所有核心CPU的使用率.比如我本…
上篇博文中给大家分享了使用Windbg分析线程阻塞问题: Windbg程序调试系列3-线程阻塞问题 本篇中我们继续,跟大家分享附加进程实时调试-Live Debugging. 先说一下使用Windbg附加进程实时调试的应用场景和注意事项: 应用场景: 集成测试环境,影响异常后,分析异常和线程上下文的执行堆栈.参数情况: 生产环境:短时间内调试程序异常,查看异常上下文和参数,但是调试时间不能太久. 注意事项:附加进程调试会阻塞请求,调试后新的请求被阻塞住,前端调用受影响,因此要谨慎.权衡利弊,开发…
上一篇博文给大家分享了使用Windbg分析内存泄露问题: Windbg程序调试系列2-内存泄露问题 本篇我们继续跟大家分享,如何分析解决线程阻塞问题. 从根本上讲,线程阻塞属于程序Hang的一种,其表现主要有: 1. 随着请求的增加,线程数一直增加,可能会把线程池打爆 2. 低CPU使用率(被阻塞后的CPU使用率降低) 3. 请求没有返回,客户端一直在等待,直至Timeout. 那么,从线程状态上看,什么是阻塞? 一个线程经历的5个状态,创建,就绪,运行,阻塞,终止.各个状态的转换条件如下图:…