易语言取窗口进程线程句柄等源码
系统结构:根据进程名取窗口句柄,根据窗口句柄取进程名,取进程线程标识符_,打开进程_,寻找顶级窗口_,关闭内核对象_,创建系统进程快照,取快照中第一个进程信息,取快照中下一个进程信息,寻找子窗口_,
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |------ _按钮3_被单击
| |
| |------ _按钮4_被单击
| |
| |------ __启动窗口_将被销毁
| |
| |------ 根据进程名取窗口句柄
| |
| |------ 根据窗口句柄取进程名
| |
| |------ _按钮5_被单击
| |
| |------ _按钮6_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ 取进程线程标识符_
| |
| |---[dll]------ 打开进程_
| |
| |---[dll]------ 寻找顶级窗口_
| |
| |---[dll]------ 关闭内核对象_
| |
| |---[dll]------ 创建系统进程快照
| |
| |---[dll]------ 取快照中第一个进程信息
| |
| |---[dll]------ 取快照中下一个进程信息
| |
| |---[dll]------ 寻找子窗口_
调用的DLL命令:
.DLL命令 取进程线程标识符_, 整数型, "user32.dll", "GetWindowThreadProcessId", , GetWindowThreadProcessId,获取与指定窗口关联在一起的一个线程和进程标识符
.参数 窗口句柄, 整数型, , hwnd,指定窗口句柄
.参数 进程标识符, 整数型, 传址, lpdwProcessId,指定一个变量,用于装载拥有那个窗口的一个进程的标识符
.DLL命令 打开进程_, 整数型, "kernel32.dll", "OpenProcess", , 将句柄返回给过程对象
.参数 进程对象, 整数型, , dwDesiredAccess
.参数 继承句柄, 整数型, , bInheritHandle
.参数 进程标识符, 整数型, , dwProcessId
.DLL命令 寻找顶级窗口_, 整数型, "user32.dll", "FindWindowA", , FindWindow,寻找窗口列表中第一个符合指定条件的顶级窗口
.参数 窗口类名, 文本型, , lpClassName,参见相关帮助
.参数 窗口文本, 文本型, , lpWindowName,参见相关帮助
.DLL命令 关闭内核对象_, 整数型, "kernel32", "CloseHandle", , 关闭一个内核对象。其中包括文件、文件映射、进程、线程、security和同步对象等。涉及文件处理时,这个函数通常与vb的close命令相似。应尽可能的使用close,因为它支持vb的差错控制。注意这个函数使用的文件句柄与vb的文件编号是完全不同的 非零表示成功,零表示失败。会设置GetLastError
.参数 对象句柄, 整数型, , 欲关闭的一个对象的句柄;
.DLL命令 创建系统进程快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 dwFlags, 整数型
.参数 th32ProcessID, 整数型, , 获取系统进程列表或获取当前进程快照时可以设为0
.DLL命令 取快照中第一个进程信息, 整数型, , "Process32First"
.参数 hSnapshot, 整数型, , 快照返回的句柄
.参数 lppe, PROCESSENTRY32
.DLL命令 取快照中下一个进程信息, 整数型, , "Process32Next"
.参数 hSnapshot, 整数型
.参数 lppe, PROCESSENTRY32
.DLL命令 寻找子窗口_, 整数型, "user32", "FindWindowExA", , 在窗口列表中寻找与指定条件相符的第一个子窗口 找到的窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError
.参数 窗口句柄1, 整数型, , 在其中查找子的父窗口。如设为零,表示使用桌面窗口(通常说的顶级窗口都被认为是桌面的子窗口,所以也会对它们进行查找)
.参数 窗口句柄2, 整数型, , 从这个窗口后开始查找。这样便可利用对FindWindowEx的多次调用找到符合条件的所有子窗口。如设为零,表示从第一个子窗口开始搜索
.参数 欲搜索的类名1, 文本型, , 欲搜索的类名。“”表示忽略
.参数 欲搜索的类名2, 文本型, , 欲搜索的类名。“”表示忽略;
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。