文章目录[隐藏]
Win32的基础就是由DLL组成的。Win32 API的核心由3个DLL提供,它们是:
KERNEL32.DLL——系统服务功能。包括内存管理、任务管理和动态链接等
GDI32.DLL——图形设备接口。利用VGA与DRV之类的显示设备驱动程序完成显示文本和矩形等功能
USER32.DLL——用户接口服务。建立窗口和传送消息等
Wsock32.dll--------使用TCP/IP协议进行网络通信的DLL它所提供的API称为Socket API;
Tapi32.dll----专用于电话服务方面的API称为TAPI(Telephony API 所有的这些DLL提供的函数组成了现在所用的Win32编程环境。
本课通过MoveWindow在易语言中,采用静态、汇编、动态调用演示。
静态调用MOVEwindow
.版本 2
.子程序 _按钮1_被单击, , , 静态调用
API_MoveWindow (取窗口句柄 (), 0, 0, 取屏幕宽度 (), 取屏幕高度 () - 40, 真)
API调用
.版本 2
.支持库 spec
.子程序 _按钮2_被单击, , , API调用
.局部变量 a, 整数型
.局部变量 ret, 整数型
.局部变量 w
.局部变量 h
.局部变量 i, 整数型
a = 调用API (“user32.dll”, “MoveWindow”)
' 我们就可以使用 调用子程序
w = 600
h = 取屏幕高度 () - 40
.计次循环首 (600, i)
w = w + 1
延迟 (10)
调用子程序 (a, ret, , 取窗口句柄 (), 0, 0, w, h, 真)
.计次循环尾 ()
汇编调用
.版本 2
.子程序 _按钮3_被单击, , , 汇编调用
.局部变量 参数, 整数型, , "6"
.局部变量 句柄, 整数型
.局部变量 l, 整数型
.局部变量 d, 整数型
.局部变量 w, 整数型
.局部变量 h, 整数型
.局部变量 log, 逻辑型
句柄 = 取窗口句柄 ()
l = 0
d = 0
w = 取屏幕宽度 ()
h = 取屏幕高度 () - 30
log = 真
参数 [1] = 取变量数据地址_ (句柄)
参数 [2] = 取变量数据地址_ (l)
参数 [3] = 取变量数据地址_ (d)
参数 [4] = 取变量数据地址_ (w)
参数 [5] = 取变量数据地址_ (h)
参数 [6] = 取变量数据地址_ (log)
API_Asm (“user32.dll”, “MoveWindow”, 参数, )
API_Asm源码:
.版本 2
.子程序 API_Asm, 整数型
.参数 库名, 文本型, , [ebp+8]
.参数 函数, 文本型, , [ebp+12]
.参数 参数, 整数型, 可空 数组, [ebp+16]
.参数 是否为C调用, 逻辑型, 可空, [ebp+20]
.局部变量 库地址, 整数型, , , [ebp-4]
.局部变量 函数地址, 整数型, , , [ebp-8]
.局部变量 返回值, 整数型, , , [ebp-12]
连续赋值 (0, 库地址, 函数地址)
置入代码 ({ 139, 125, 8, 139, 63, 87, 51, 192, 131, 201, 255, 242, 174, 95, 139, 241, 247, 214, 100, 161, 48, 0, 0, 0, 139, 64, 12, 139, 80, 12, 141, 64, 16, 255, 48, 51, 192, 82, 139, 74, 48, 15, 182, 28, 56, 15, 182, 20, 65, 43, 218, 131, 251, 0, 116, 12, 131, 251, 32, 116, 7, 131, 251, 224, 116, 2, 117, 9, 131, 192, 1, 59, 240, 116, 15, 117, 220, 90, 139, 18, 51, 192, 91, 59, 218, 83, 116, 6, 117, 203, 90, 139, 66, 24, 137, 69, 252, 139, 93, 252, 131, 251, 0, 116, 58, 139, 67, 60, 3, 195, 139, 80, 120, 3, 211, 139, 74, 24, 139, 66, 32, 81, 81, 80, 51, 192, 131, 201, 255, 139, 125, 12, 139, 63, 242, 174, 247, 209, 88, 81, 139, 125, 12, 139, 63, 139, 52, 24, 3, 243, 243, 166, 89, 116, 14, 131, 192, 4, 94, 78, 86, 117, 232, 51, 192, 137, 69, 248, 144, 94, 89, 43, 206, 139, 66, 36, 141, 4, 72, 15, 183, 4, 24, 139, 74, 28, 141, 4, 129, 139, 4, 24, 3, 195, 137, 69, 248, 131, 236, 8, 86, 139, 117, 16, 139, 54, 139, 118, 4, 141, 78, 255, 133, 201, 124, 18, 139, 69, 16, 139, 0, 141, 68, 136, 8, 65, 255, 48, 131, 232, 4, 73, 117, 248, 255, 85, 248, 137, 69, 244, 139, 69, 20, 133, 192, 116, 9, 141, 4, 181, 0, 0, 0, 0, 3, 224 })
教程下载:
百度网盘链接:https://pan.baidu.com/s/158ikKVjIwaoF4438MG4fhA
提取码:加QQ群:521068947 群文件下载
资源教程交流①群:521068947
511遇见QQ: 272586593