自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 Windows学习(012)--HOOK系列知识点

Windows消息HOOK 对windows消息进行挂钩子,所谓的钩子即为在这个消息发生的时候,来做些事情。我们可以下钩子,别人也可以下,这样就形成了一个钩子链。有关函数 SetWindowsHookExCallNextHookExUnhookWindowsHookEx 要注意的是,在对消息HOOK时,要保证该线程有消息循环,否则会导致程序卡死。

2017-09-19 14:27:11 387

原创 Windows学习(011)--内核对象(二)

事件内核对象函数原型HANDLE WINAPI CreateEvent( _In_opt_ LPSECURITY_ATTRIBUTES lpEventAttributes, _In_ BOOL bManualReset, _In_ BOOL bInitialState, _In_opt_ LPCT

2017-07-08 09:47:02 229

原创 Windows学习(010)--内核对象(一)

内核对象概述Windows操作系统分为Ring3和Ring0层Ring3层是全开放的, 无监管的Ring0层是有监管的 是操作系统以及软件正在运行的地方在软件运行的时候, 我们正真的操作都是在Ring0发生的可通过WinAPI向Ring0层发送请求当Ring0层检测到这是一个合理的请求时,内核对象会被Ring0层进行改变通过句柄可以操作Ring0层指定的内核对象 但是句柄不代表Ri

2017-07-07 18:37:05 286

原创 Windows学习(009)--线程(三)线程同步

线程同步

2017-06-24 17:15:54 279

原创 Windows学习(008)--线程(二)

线程启动到死亡创建线程的内核对象 使用计数,为2暂停计数,是一个UINT类型,这就意味着,一个线程会被暂停多次,当暂停计数为0时,这个线程才将会被执行,为1退出代码,此时的退出代码为STILL_ACTIVESignaled,开始为FALSE栈 在栈顶会有lpParam和lpfnAddrCONTEXT线程上下文结构体,线程上一次运行时的寄存器EIP(指令寄存器),指示下一条代码在哪运行

2017-06-21 23:00:29 227

原创 Windows学习(008)--线程(一)

线程函数HANDLE WINAPI CreateThread( _In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes, //线程安全结构体,一般设置为NULL _In_ SIZE_T dwStackSize, //线程分配堆栈的大小,填0编译器会设置默认大小 _In_ LP

2017-06-14 16:11:56 249

原创 这20年我做了些什么

20年,是一个人生说长不长,说短不短的时间.在这段时间内,我是快乐的,但也是遗憾.但往主题想想,我这20年到底做了什么有意义的事情?       伴随这20年的事情,基本上可以分为2类:玩和学习.从时间的节点分别说说这2个方面.       读书前,对这个未知世界充满好奇和兴趣,情不自禁去探索.有时玩的忘了时间,被老妈一顿骂在所难免.在这个阶段的记忆实在模糊,隐约记得在贪玩的路上,背后隔着

2017-06-11 17:50:36 587

原创 Windows学习(007)--进程

进程进程的组成 进程是“惰性”的,进程要做任何事情,都必须让线程来运行,线程执行进程地址空间中包含的代码。 一个进程可以拥有多个线程,所有的线程都能够在进程的地址空间 中“同时”运行代码,每个线程都有他自己的CPU寄存器以及自己的堆栈。 每个进程必须有一个线程,当系统创建亿个进程时,会自动创建亿个线程,这个线程我们称为主线程,如歌没有线程要执行进程地址空间的代码,进程就会失去了存在的意

2017-06-04 16:16:01 431

原创 Windows学习(006)--对话框交互

1.对话框创建模态对话框 经常使用临时对象等待另一个窗口完成之后,才能做自己的事情属于主窗口的子窗口非模态对话框 在Init中new这个对话框,在Close时delete和主窗口同级的窗口2.调用CreatrWindow后,发送WM_CREATE消息,之后,OnInitDiadlg()被调用。 3.窗口类里面维护了窗口内核对象,只有当该窗口对象进行Create或DoModal之后

2017-05-24 22:28:24 256

原创 Windows学习(005)--异步IO

1.异步I/O提醒方式。设备内核对象。时间内核对象。可提醒I/O。I/O完成端口。2.使用事件内核对象完成I/O提醒操作。事件内核对象纯在操作系统里面,是所有程序共享。可以用于程序之间交互。简单实现:int _tmain(int argc, _TCHAR* argv[]){ HANDLE hFile=CreateFile(TEXT("demo.txt"), GENERI

2017-05-24 21:49:22 222

原创 Windows学习(004)--消息机制

1.在VS中自动生成win32窗口。// win32Demo.cpp : 定义应用程序的入口点。//#include "stdafx.h"#include "win32Demo.h"#define MAX_LOADSTRING 100// 全局变量: HINSTANCE hInst; // 当前实例TCHAR szTitle[MA

2017-05-16 20:05:52 231

原创 Windows学习(003)--CreateFile

CreateFile原型:HANDLE CreateFile( _In_ LPCTSTR lpFileName, _In_ DWORD dwDesiredAccess, _In_ DWORD dwShareMode, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _In_ DWORD dwCreat

2017-05-14 19:29:31 347

原创 Windows学习(002)--Windows基础数据类型

Windows数据类型是对C语言数据类型的包装。Windows数据类型:l  CHARtypedef char CHAR,*PCHARl  DWORDtypedef unsigned long DWORD,*PDWORD,*LPDWORDl  DWORD_PTRtypedef ULONG_PTR DWORD_PTR,*PDWORD_PTRtypedef unsign

2017-05-13 17:22:55 292

原创 Windows学习(001)--Windows简介

Windows版本l  Windows有很多版本。l  在众多版本中,可以分为2大类:NT和CE。l  到现在,CE绝版。现在最新Windouws10就是属于NT结构。 NT结构l  NT结构是一种系统架构。l  NT结构分为2层:用户态和核心态 API&SDK&MFCl  API:程序的接口。l  SDK:软体开发工具组,可能包含文档、编译器等。比如Q

2017-05-13 17:21:21 430

空空如也

空空如也

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

TA关注的人

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