标签 : 调试

另一种自动更新MS的调试符号

如果你的网速还行的话,可以按下面链接中提到方法更新本机符号。

Use the Microsoft Symbol Server to obtain debug symbol files

此法一个好处,让众多调试器自动更新符号文件,VC, Windbg, IDA均支持。
缺点影响你速度,因为需要下载符号文件。

WinDbg学习笔记整理

去年看WinDbg帮助时随手记下来的一点资料,放上来保存一下,有新内容我会陆续更新上来。

OD常用断点(转)

知识点到用时方恨少,转过来方便查找.

介绍一款Trace显示工具DebugView,送给自己发消息跟踪的朋友

DebugView可谓出生名门,Sysinternals荣誉出品,功能也是异常的强大。可以调试一般的Win32,也可以调用内核程序。可以调试本程序,也可以调试远程程序。就是我看到SysInterals出品的工具,没有不强不好用的,现在也归于Microsoft的麾下。

利用SEH来捕获程序异常信息

发布出去的版本莫名其妙的出现崩溃,在家的程序员真的要崩溃了。如何定位以前转过一篇罗聪大侠的仅通过崩溃地址找出源代码的出错行,今天看到一个类,根据SEH异常来记录程序崩溃时的调用堆栈的类,使用也很简单,只要将下面的类下载后,加入到自己项目工程中即可。由于该类申明了一个全局变量,所以不需要加任何代码,进入你的工程。当出现异常后,你的应用程序将在系统目录中产生一个日志文件,具体的使用,请参阅代码,或看原作者说明。

error C2601

现在已经很用VS做东西了,偶尔做做还经常冒出一些问题。而且这一次记住了,下一次还会忘。决定把以后5分钟解决不到我编译错误记下来,时常翻翻。

如果VS冒出这样的一连串的错误,肯定是所指向代码的上方那个地方,包括没有闭合。

error C2601: local function definitions are illegal

最近程序调的手发麻,头发大。

: -P,最近这段时间调程序调的累死人,目前团队这种开发环境下,抓一个异常或重现一个Bug将要花费成熟IDE的十倍时间。每次对程序的修改,只有将Bin烧录到芯片内才能看到效果,其间将要花费几分钟来折腾。不能断点,不能看堆栈,只有一条路,打trace。如果trace太多,COM口还会无情的给你来个罢工,连个Log都看不到。想想在VC下调试程序,是一件多么幸福的事情。

公司催着要量产,测试团队的MM也加入了进来,准备给你们“找茬”,近期将是一场恶战。关键我手头这个模块,真是把人给搞伤着了。不知道是我不争气,还是底层的平台不争气。一进模块就给我来个崩溃,今天的一天的工作估计有1/5的时间,是在插拔下载线中度过的。一次一次的崩溃,一次一次的重试,问题渐渐的浮出水面。就在这个关键时刻,机器居然被折腾的不行了,每烧到第六秒毕失败,难道传说中的Flash被烧挂了, T_T。真是屋漏偏逢连阴雨,>_<。

等过了此役,我的调试和代码阅读能力应该将会小有进步,: -D。

OllyDbg实用技巧

OllyDbg的help-怎样开始调试(翻译)

最简单的方法是启动OllyDbg,点击File|Open,然后选择你想调试的程序。程序需要命令行参数输入对话框下方的文本栏。
重新开始调试最后一个程序的快捷键是Ctrl+F2,并且O…

ASM代码级调试

随着汇编代码量的增加,出错的可能性也在渐渐增大。Masm汇编也没提供相应该的调试环境,一般做法是将生成的可执行文件放到OD或SoftIce中调试。毕竟代码是自己写的,结构还是很了解的,比起逆向别人的程序要方便的…

清除Ollydbg调试记录

用Ollydbg调试一个程序的时候,ollydbg会将上一次程序调试信息给记来了。比如曾经下过的断点,如果在用汇编写一个程序需要反复调试,保存曾经的调试信息,有是会很麻烦。那如何清除呢?
打开Ollydbg,菜单“选项”-…

OllyDBG入门教程

第一卷 OllyDBG 入门系列
第一篇 认识OllyDBG
第二篇 字串参考
第三篇 函数参考
第四篇 内存断点
第五篇 消息断点及 RUN 跟踪
第七篇 汇编功能

第二卷 OllyDBG 技巧系列
第一篇 OllyDbg实用技巧六则
第二…

IDA简易教程

www.datarescue.com

IDA简易教程
作者:www.datarescue.com
翻译:WiNrOOt (winroot@126.com)

我的鸟语太差大概翻译了一下,大家凑合着能看懂就行了:-)有些地方用自己理解的意思改写了一下!
本文的主要内容…

钩子的类型和实现

BOOL CMouseDlg::OnInitDialog()
{
CDialog::OnInitDialog();
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX <0xF000);
CMenu* pSysMenu = GetSyst…

仅通过崩溃地址找出源代码的出错行

作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃!

“该程序执行了非法操作,即将关闭。请与你的软件供应商联系…

支付宝控件漏洞——到底是谁在撒谎?

//小时侯常说知错能改是好孩子。知错光改还不行,要敢于承认哦   by Lonkil

//作者:tombkeeper

支付宝控件漏洞——到底是谁在撒谎?

文档维护:tombkeeper[Base64Decode(“dG9tYmtlZXBlckB4Zm9jdXMub3Jn”…