![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Windows
文章平均质量分 88
fan751177272
这个作者很懒,什么都没留下…
展开
-
Windows学习(006)--对话框交互
1.对话框创建 模态对话框 经常使用临时对象 等待另一个窗口完成之后,才能做自己的事情 属于主窗口的子窗口 非模态对话框 在Init中new这个对话框,在Close时delete 和主窗口同级的窗口 2.调用CreatrWindow后,发送WM_CREATE消息,之后,OnInitDiadlg()被调用。 3.窗口类里面维护了窗口内核对象,只有当该窗口对象进行Create或DoModal之后原创 2017-05-24 22:28:24 · 248 阅读 · 0 评论 -
Windows学习(010)--内核对象(一)
内核对象概述 Windows操作系统分为Ring3和Ring0层 Ring3层是全开放的, 无监管的 Ring0层是有监管的 是操作系统以及软件正在运行的地方 在软件运行的时候, 我们正真的操作都是在Ring0发生的 可通过WinAPI向Ring0层发送请求 当Ring0层检测到这是一个合理的请求时,内核对象会被Ring0层进行改变 通过句柄可以操作Ring0层指定的内核对象 但是句柄不代表Ri原创 2017-07-07 18:37:05 · 282 阅读 · 0 评论 -
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 · 221 阅读 · 0 评论 -
Windows学习(008)--线程(一)
线程函数HANDLE WINAPI CreateThread( _In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes, //线程安全结构体,一般设置为NULL _In_ SIZE_T dwStackSize, //线程分配堆栈的大小,填0编译器会设置默认大小 _In_ LP原创 2017-06-14 16:11:56 · 242 阅读 · 0 评论 -
Windows学习(008)--线程(二)
线程启动到死亡 创建线程的内核对象 使用计数,为2 暂停计数,是一个UINT类型,这就意味着,一个线程会被暂停多次,当暂停计数为0时,这个线程才将会被执行,为1 退出代码,此时的退出代码为STILL_ACTIVE Signaled,开始为FALSE 栈 在栈顶会有lpParam和lpfnAddr CONTEXT线程上下文结构体,线程上一次运行时的寄存器EIP(指令寄存器),指示下一条代码在哪运行原创 2017-06-21 23:00:29 · 220 阅读 · 0 评论 -
Windows学习(007)--进程
进程 进程的组成 进程是“惰性”的,进程要做任何事情,都必须让线程来运行,线程执行进程地址空间中包含的代码。 一个进程可以拥有多个线程,所有的线程都能够在进程的地址空间 中“同时”运行代码,每个线程都有他自己的CPU寄存器以及自己的堆栈。 每个进程必须有一个线程,当系统创建亿个进程时,会自动创建亿个线程,这个线程我们称为主线程,如歌没有线程要执行进程地址空间的代码,进程就会失去了存在的意原创 2017-06-04 16:16:01 · 422 阅读 · 0 评论 -
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 · 215 阅读 · 0 评论 -
Windows学习(009)--线程(三)线程同步
线程同步原创 2017-06-24 17:15:54 · 275 阅读 · 0 评论 -
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 · 224 阅读 · 0 评论 -
Windows学习(001)--Windows简介
Windows版本 l Windows有很多版本。 l 在众多版本中,可以分为2大类:NT和CE。 l 到现在,CE绝版。现在最新Windouws10就是属于NT结构。 NT结构 l NT结构是一种系统架构。 l NT结构分为2层:用户态和核心态 API&SDK&MFC l API:程序的接口。 l SDK:软体开发工具组,可能包含文档、编译器等。比如Q原创 2017-05-13 17:21:21 · 418 阅读 · 0 评论 -
Windows学习(002)--Windows基础数据类型
Windows数据类型是对C语言数据类型的包装。 Windows数据类型: l CHAR typedef char CHAR,*PCHAR l DWORD typedef unsigned long DWORD,*PDWORD,*LPDWORD l DWORD_PTR typedef ULONG_PTR DWORD_PTR,*PDWORD_PTR typedef unsign原创 2017-05-13 17:22:55 · 282 阅读 · 0 评论 -
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 · 338 阅读 · 0 评论 -
Windows学习(012)--HOOK系列知识点
Windows消息HOOK 对windows消息进行挂钩子,所谓的钩子即为在这个消息发生的时候,来做些事情。我们可以下钩子,别人也可以下,这样就形成了一个钩子链。有关函数 SetWindowsHookEx CallNextHookEx UnhookWindowsHookEx 要注意的是,在对消息HOOK时,要保证该线程有消息循环,否则会导致程序卡死。原创 2017-09-19 14:27:11 · 370 阅读 · 0 评论