基础复习
爱沧海
这个作者很懒,什么都没留下…
展开
-
硬件断点的原理 ---- OD各种断点的原理
1.前言 在我跨入ollydbg的门的时候,就对ollydbg里面的各种断点充满了疑问,以前我总是不明白普通断点,内存断点,硬件断点有什么区别,他们为什么有些时候不能混用,他们的原理是什么,在学习了前辈们的文章以后,终于明白了一些东西。希望这篇文章能让你对硬件断点的原理和使用有一些帮助2.正文------------------------------------------转载 2012-05-27 19:43:16 · 10069 阅读 · 0 评论 -
如何确定VS编译器版本--_MSC_VER
如何确定VS编译器版本_MSC_VER是MSVC编译器的内置宏,定义了编译器的版本,_MSC_VER 值对应版本关系MSVC++ 11.0 _MSC_VER = 1700 (Visual Studio 2012) MSVC++ 10.0 _MSC_VER = 1600 (Visual Studio 2010) MSVC++ 9.0 _MSC_VER = 1500 (Visual原创 2013-12-09 10:50:32 · 31381 阅读 · 1 评论 -
Windows中的时间(SYSTEMTIME和FILETIME)&CRT中的时间(time_t和tm)
地址:http://blog.csdn.net/bokee/article/details/5330791上一篇中介绍了C运行库中的时间处理函数。这一篇介绍Windows SDk中提供的时间函数。两种时间系统之间没有本质区别(事实上CRT时间是用Windows时间实现的,当然这是说的VC实现),同样提供本地时间和UTC时间之间的转换。不过CRT中的tm时间在SDK中对应为系统时间(SYSTEM转载 2013-08-09 17:31:06 · 3854 阅读 · 0 评论 -
进程线程同步相关
1.Critical_section 相关操作:InitializeCriticalSectionEnterCriticalSectionLeaveCriticalSectionDeleteCriticalSectionTryEnterCriticalSection //如果资源被占用会返回false,而不是进行睡眠等待。InitializeCriticalS原创 2013-03-23 15:22:15 · 700 阅读 · 0 评论 -
windows的用户栈和内核栈
windows的用户栈和内核栈1、简介 普通的Win32线程有两个栈:一个是用户栈,另一个是内核栈;而如果是内核中创建的系统工作线程,则只有内核栈。只要代码在内核中运行,线程就一定是使用其内核栈的。栈的主要作用是维护函数调用帧,以及为局部变量提供空间。 在Windows里,一个线程的用户空间的信息都记录在了TEB中,而TEB中又有一个域叫做NtT转载 2012-10-09 15:58:43 · 3552 阅读 · 0 评论 -
MFC 窗口重绘
在刷新窗口时经常要调用重绘函数MFC提供了三个函数用于窗口重绘InvalidateRect(&Rect)Invalidate()UpdateWindow()当需要更新或者重绘窗口时,一般系统会发出两个消息WM_PAINT(通知客户区有变化)和WM_NCPAINT(通知非客户区有变化)--WM_NVPAINT系统会自己搞定--WM_PAINT消息对应的函数是OnPai转载 2012-07-31 10:13:30 · 12278 阅读 · 0 评论 -
WDK/DDK :warning treated as error
WDK/DDK中掉 error C2220: warning treated as error 其实就是关掉编译选项的问题…网上提得最多的就是修改 WDKPATH\i386.inc文件中的MSC_WARNING_LEVEL=$(MSC_WARNING_LEVEL) $(COMPILER_WX_SWITCH)改为MSC_WARNING_LEVEL=$(MSC转载 2012-08-14 17:22:11 · 1490 阅读 · 0 评论 -
设置VC6.0支持Unicode编程环境
VC6.0,默认支持的是ANSI.因此使用VC++6.0进行Unicode编程主要做以下几项工作: 1、如果你按装VC++ 6.0时不是完全安装,会报各种库丢失,如mfc42u.lib等..建议修复选各完全安装。2、为工程添加UNICODE和_UNICODE预处理选项。 具体步骤:打开[工程]->[设置…]对话框,在C/C++标签对话框的“预处理程序定义”中去除原创 2012-07-02 12:24:22 · 867 阅读 · 0 评论 -
细看了下NTSTATUS
msdn 中的:The following figure shows the layout for NTSTATUS values. NTSTATUS Layout 313029 28 16 15 0// +----+--+---------------------原创 2012-05-23 22:36:19 · 2768 阅读 · 0 评论 -
do{...}while(0)的妙用
do...while(0)的妙用在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。 但是,最近在读我们项目的代码时,却发现了do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。1. do...while转载 2012-06-11 21:13:36 · 613 阅读 · 0 评论 -
驱动复习总结--指明代码加载内存位置的几种方式
//第一种方法//// demo.h//#pragma once#ifdef __cplusplusextern "C"{#endif#include #ifdef __cplusplus}#endif #define PAGEDCODE code_seg("PAGE") //分页内存#define LOCKEDCODE code_se原创 2012-05-21 20:21:20 · 1684 阅读 · 1 评论 -
Vmware与主机间共享文件的七种方法(附图+详解)
相信很多玩电脑的人都用过Vmware吧?(Vmware是虾米东西?倒!点下这里就知道了),不过好多人都不清楚如何在本机和虚拟机间共享文件和数据,那么今天我就给大家分享下我所知道的方法,如果你也有不错的方法或本文有什么错误请告诉我,谢谢!测试环境是:物理机:win Xp SP2 打全所有系统补丁虚拟机版本:VMware workstation 6.0.0 Build 45转载 2012-06-08 10:10:31 · 1543 阅读 · 0 评论 -
检测内存泄漏
////////////////////////////////////-----------test.cpp//包含文件不能变顺序#define _CRTDBG_MAP_ALLOC#include #include #define new new( _CLIENT_BLOCK, __FILE__, __LINE__)int main(){原创 2012-05-31 15:07:58 · 1320 阅读 · 0 评论 -
STL Vector使用
前一篇日志中,我们记述了利用面向对象中的多态性实现画圆和画方形的操作。今天把其中的涉及到的知识点vector作一个总结,以作记忆。http://blog.163.com/zhoumhan_0351/blog/static/399542272010225104536463一、vector的基本概念vector是同一种类型的对象的集合,每个对象都转载 2014-11-29 10:24:17 · 1550 阅读 · 0 评论