窗口的本质

1.窗口的本质 :GUI   GDI

  

ntoskrnl.exe 和Win32K.sys 两个文件最重要,Kernel32.dll只是提供一个接口;真正的实现都在内核

HANDLE 是私有句柄表的一个索引;

HWND  窗口句柄 是全局句柄表的一个索引;所有进程共用;

 

 

2.GDI 图形设备接口

  1.设备对象(HWND)

  2.DC(设备上下文,Device Contexts)

  3.图形对象

//射击游戏可以根据人物坐标来进程画框

 1 // 窗口的本质.cpp : 定义控制台应用程序的入口点。
 2 //
 3 
 4 #include "stdafx.h"
 5 #include <windows.h>
 6 
 7 int main()
 8 {
 9     HWND hwnd;
10     HDC hdc;
11     HPEN hpen;
12     //1,设备对象  画在哪
13     hwnd = (HWND)0x000E0244; //画在哪个窗口上
14 
15     //2.获取设备对象上下文
16     hdc=GetDC(hwnd);
17     
18     //3.创建画笔来设置线条属性
19     hpen = CreatePen(PS_SOLID, 4,RGB(0xFF,00,00));
20     
21     //4.关联
22     SelectObject(hdc, hpen);
23 
24     //5.开始划线
25     LineTo(hdc, 400, 400);
26 
27     //6.释放资源
28     DeleteObject(hpen);
29     ReleaseDC(hwnd,hdc);
30     return 0;
31 }

窗口都是画出来的,而且是一个不停画的过程!

 

posted @ 2019-07-05 23:58  瀚瀚大人  阅读(174)  评论(0编辑  收藏  举报