易语言模块API视频教程进程ID取窗口句柄

API

FindWindowExA
.版本 2

.DLL命令 FindWindowExA, 整数型, "user32", "FindWindowExA", 公开, 窗口_取句柄ExA 在窗口列表中寻找与指定条件相符的第一个子窗口 找到的窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError
.参数 父窗口句柄, 整数型, , 在其中查找子的父窗口。如设为零,表示使用桌面窗口(通常说的顶级窗口都被认为是桌面的子窗口,所以也会对它们进行查找)
.参数 子窗口, 整数型, , 从这个窗口后开始查找。这样便可利用对FindWindowEx的多次调用找到符合条件的所有子窗口。如设为零,表示从第一个子窗口开始搜索
.参数 类名, 文本型, , 欲搜索的类名。零表示忽略
.参数 标题, 文本型, , 欲搜索的标题。零表示忽略;

IsWindow
.版本 2

.DLL命令 IsWindow, 整数型, "user32", "IsWindow", 公开, 判断一个窗口句柄是否有效 非零表示成功,零表示失败
.参数 hwnd, 整数型, , 待检查窗口的句柄;

IsWindowVisible
.版本 2

.DLL命令 IsWindowVisible, 整数型, "user32", "IsWindowVisible", , 判断窗口是否可见 如窗口可见则返回TRUE(非零)
.参数 hwnd, 整数型, , 要测试的那个窗口的句柄;

进程_ID取窗口句柄

.版本 2

.子程序 进程_ID取窗口句柄, 整数型, 公开, 通过进程ID取得该进程的窗口句柄,超时的时候返回 0
.参数 进程ID, 整数型, , 进程的ID
.参数 窗口标题, 文本型, 可空, 欲搜索的标题。零表示忽略;
.参数 窗口类名, 文本型, 可空, 欲搜索的类名。零表示忽略
.参数 超时, , 可空, 为空的话就无限循环
.局部变量 局_窗口句柄, 整数型
.局部变量 局_进程ID, 整数型
.局部变量 局_标题, 文本型
.局部变量 局_类名, 文本型
.局部变量 局_开始时间, 整数型
.局部变量 局_超时时间, 整数型

局_开始时间 = 取启动时间 ()
局_超时时间 = 选择 (是否为空 (超时) 或 超时 = -1, 31536000, 超时)
.判断循环首 (取启动时间 () - 局_开始时间 < 局_超时时间)
局_窗口句柄 = FindWindowExA (0, 局_窗口句柄, 字符 (0), 字符 (0))
.如果真 (IsWindow (局_窗口句柄) ≠ 0)
.如果真 (IsWindowVisible (局_窗口句柄))
局_进程ID = 窗口_句柄取进程ID (局_窗口句柄)
.如果真 (局_进程ID = 进程ID)
局_类名 = 窗口_取类名 (局_窗口句柄)
局_标题 = 窗口_取标题 (局_窗口句柄)
.如果真 (寻找文本 (局_标题, 窗口标题, , 假) ≠ -1)
返回 (局_窗口句柄)
.如果真结束
.如果真 (寻找文本 (局_类名, 窗口类名, , 假) ≠ -1)
返回 (局_窗口句柄)
.如果真结束
.如果真 (是否为空 (窗口标题) 或 是否为空 (窗口类名))
返回 (局_窗口句柄)
.如果真结束

.如果真结束

.如果真结束

.如果真结束
处理事件 ()
.判断循环尾 ()
返回 (0)


发布日期:

所属分类: 易语言 标签: