自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lily的专栏

一切尽在掌握~~嘿嘿

  • 博客(13)
  • 收藏
  • 关注

原创 DirectShow学习--Filter的开发(1)

 开发环境的配置       源文件中要包含Streams.h头文件;       使用_stdcall函数调用约定;       使用多线程的C运行库,在工程中User run-time Library中,Debug选择Debug Multithreaded,Release版选择Multithreaded;       连接库需配置 Debug:Strmbasd.lib Msvc

2008-10-28 09:52:00 417

转载 匈牙利命名法

匈牙利命名法MFC、句柄、控件及结构的命名规范 Windows类型样本变量MFC类样本变量HWNDhWnd;CWnd*pWnd;HDLGhDlg;CDialog*pDlg;HDChDC;CDC*pDC;HGDIOBJhG

2008-10-28 09:41:00 315

原创 Windows程序调试--调试版本和发布版本的区别

 调试版本和发布版本的区别调试版本的编译选项链接选项含义/MDd,/MLd,或者/MTd使用调试版本的运行时刻函数库/Od关闭优化开关/D”_DEBUG”打开条件编译调试代码开关/ZI创建编辑继续的程序数据库/GZ在调试版本中捕获调试版本的错误/Gm

2008-10-28 09:21:00 2547

原创 Windows程序调试--VC调试器使用

 编译与连接选项调试错误的编译选项编译选项含义/W4在最高的警告层次作编译(所有版本都使用)/D ”_DEBUG”打开条件编译调试代码开关,例如,断言语句与跟踪语句(仅在调试版中使用)/GZ有助于在调试版本中找到在开发版本中经常会出现的错误,包括未初始化的自动(局部)变量、堆栈错误、不正确的函数原型(仅在调

2008-10-28 09:20:00 539

原创 Windows程序调试--Dr.Watson调试

 Dr.Watson调试       只要一个没有崩溃的堆栈、一个Dr.Watson日志文件,就可以得到从错误跟踪到出错源程序的任何信息。它给了一个非常详细的堆栈跟踪、对应于每个堆栈帧的汇编代码以及系统状态的一个概要记录。       Dr.Watson可执行文件XP中在/WINDOWS/system32/drwatson.exe,配置程序/WINDOWS/system32/drwtsn3

2008-10-28 09:17:00 428

原创 Windows程序调试--创建映射文件

 创建映射文件       做事后调试需要一个对应于程序创建的所有模块的映射文件。       映射文件包含对应模块的最佳装载地址、段表、输出符号地址、静态符号地址以及程序代码地址和源程序行号的映射。    为你的程序创建映射文件,你必须对Visual C++工程中的相应选项作适当的设置。第一步是打开映射文件生成功能、你可以在工程设置对话框里进行设置,在Link标签里的Debug类里打

2008-10-28 08:57:00 498

原创 读取16进制转存信息

  字节存在内存中有两种方式1.  Big Endian:首先存储高字节,例0x12345678 存为 0x12 0x34 0x56 0x782.  Little Endian:首先存储低字节,例 0x12345678 存为 0x78 0x56 0x34 0x12Intel处理器使用的是Little Endian

2008-10-08 10:53:00 436

原创 Windows程序调试--函数调用规范

 参数的压栈、退栈方式是由函数调用规范决定的        Windows常用的调用规范:调用规范描述_cdeclC/C++程序的默认调用规范。参数从右到左传递,由调用函数负责将参数从堆栈中移走,这利于传递个数可变的参数_stdcall这个WindowAPI函数使用的调用规范。参数从右到左传递,由被调用函数负责将参数从堆栈

2008-10-08 10:50:00 454

原创 Windows程序调试--线程堆栈

每一个线程都有自己的堆栈,ESP和EBP寄存器都是堆栈专用的。       在一个函数被调用之前,函数参数和函数返回地址(EIP)被压到堆栈顶。所有的参数在传递时被提升到32位,函数的返回值放在EAX寄存器中。在函数入口处,当前堆栈基址指针被压到堆栈中,且当前堆栈指针为新的堆栈基址指针。局部变量的存储空间、函数使用的各种需要保存的寄存器的存储空间在函数入口处也被预留出来。       函数

2008-10-08 10:39:00 955

原创 常用cpu寄存器

寄存器用法EAX通用寄存器、记录函数返回值EBX通用寄存器ECX通用寄存器,记录指向对象this指针EDX通用寄存器,记录64位函数返回值的高端字ESI内存移动和比较操作的源地址寄存器EDI内存移动和比较操作的目的地址寄存器EIP指令指

2008-10-08 00:47:00 447

原创 X86的常用汇编指令

指令含义mov将右操作数复制到左操作数lea装入有效地址。用来得到局部变量和函数参数的指针push将操作数压到堆栈的栈顶pop将堆栈的栈顶数弹出到操作数中pushad将所有通用寄存器压到堆栈的栈顶popad将堆栈的栈顶数弹出到所有的通用寄存器中

2008-10-08 00:27:00 854

原创 windows程序调试--Dll的重定位

 <!-- /* Font Definitions */ @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch

2008-10-08 00:19:00 634

原创 Windows程序调试--PE文件

PE文件:可移植的可执行文件,32位的Windows可执行文件都采用此格式,以COFF为基础。COFF:通用对象文件格式。PE文件结构:               Ms-dos头(header)和存根(stub);               映射文件头(image file header);                          4029Byte    

2008-10-07 23:02:00 784

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除