ESP、EBP、CALL 指令与局部变量浅析

概述函数调用是计算机程序中一个最重要的概念之一,从汇编的角度看,能更加直观地理解函数调用的原理,理解 CALL 指令调用过程中 ESP、EBP 寄存器的作用。我们先从一段简陋的 C 语言代码说起,我们首先调用了 printf 函数,为什么要调用 printf 函数呢?实际上是为了更方便地在 Olly

GDI 映射模式

概述调用 SetMapMode 函数可以设置映射模式:int SetMapMode( HDC hdc, // 设备环境句柄 int fnMapMode // 要设置的映射模式 );同样,调用 GetMapMode 函数可以获取映射模式:int GetMapMode( HDC hdc // 设备环境句

GDI 画刷

创建画刷调用 CreateSoildBrush、CreateHatchBrush、CreateBrushIndirect 函数可以创建画刷。CreateSoildBrush:创建实心画刷;CreateHatchBrush:创建阴影画刷;CreateBrushIndirect:根据 LOGBRUSH

GDI 画笔

使用现有画笔Windows 提供三种备用画笔(Stock Pen):BLACK_PEN(黑色画笔)、WHITE_PEN(白色画笔)、NULL_PEN(不绘制任何图形的画笔)。调用 GetStockObject 函数可以获取备用画笔的句柄(HPEN),调用 SelectObject 函数可以将指定的画

GDI 边框绘制函数

绘制矩形调用 Rectangle 函数可以绘制一个矩形(它将填充这个矩形):BOOL Rectangle( HDC hdc, // 设备环境句柄 int nLeftRect, // 左边线的位置 int nTopRect, // 上边线的位置 int

GDI Bezier 样条曲线

Bezier 样条曲线Bezier 样条曲线使用四个点来定义:两个端点(起点和终点)和两个控点(用于使其不同程度地弯曲)。绘制 Bezier 样条曲线使用 PolyBezier 函数和 PolyBezierTo 函数可以绘制 Bezier 样条曲线:BOOL PolyBezier( HDC h

GDI 直线和折线

设置开始点MoveToEx 函数用于移动画笔到指定的位置:BOOL MoveToEx( HDC hdc, // 设备环境句柄 int X, // 要移动到的 x 坐标 int Y, // 要移动到的 y 坐标 LPPOINT lpPoint // 之前的位置(POIN

GDI 像素

RGB 颜色使用 RGB 宏可以创建一个由三个整数值(R、G、B)的 COLORREF 值。COLORREF RGB( BYTE byRed, // 红色值(R) BYTE byGreen, // 绿色值(G) BYTE byBlue // 蓝色值(B));设置像素SetPixe

滚动条

窗口滚动条的显示用于创建窗口的 CreateWindow 函数的第三个参数可以设置 WS_HSCROLL(水平滚动条) 和 WS_VSCROLL(垂直滚动条) 这两个风格标识符,以标识窗口附带水平滚动条和(或)垂直滚动条滚动条消息当用户单击或拖动窗口滚动条时,Windows 向窗口过程发送 WM_H

文本和客户区的尺寸

TextOut 函数TextOut 函数是在客户区指定位置显示文本的 GDI 函数,它的原型如下:BOOL TextOut( HDC hdc, // 设备环境句柄 int nXStart, // 开始位置的 x 坐标 int nYStart, //
Your browser is out of date!

Update your browser to view this website correctly. Update my browser now

×