易语言WindowHelper取窗口信息小工具源码

陌路 2019-10-09 11:25:10
导读没有用到其他模块调用了系统的dll函数,有部分可能用到钩子函数,具体功能利用鼠标点击窗口拿取点击窗口的基本信息。

易语言WindowHelper取窗口信息小工具源码

.判断开始 (参数一 = 513) ' 鼠标左键按下的参数
当前窗口句柄 = 取鼠标所在窗口句柄 ()
窗口标题 = 取窗口标题 (当前窗口句柄)
窗口类名 = 取窗口类名 (当前窗口句柄)
' 拿取进程和线程ID
线程ID = 取进程线程标识符_ (当前窗口句柄, 进程ID)
进程句柄 = 获得进程句柄 (1040, 0, 进程ID)
进程文件名 = 取空白文本 (1024)
结果 = 获取全路径名 (进程句柄, 0, 进程文件名, 1024)
.如果真 (结果 ≠ 0)
信息.进程全路径名 = 到文本 (删首尾空 (进程文件名))
.如果真结束
' 15代表拿取所有进程和线程
进程快照 = 创建快照 (15, 0)
.如果真 (进程快照 ≠ 0)
进程信息.dwSize = 296
进程句柄临时 = 第一个进程 (进程快照, 进程信息)
.判断循环首 (进程句柄临时 ≠ 0)
.如果真 (进程信息.th32ProcessID = 进程ID)
信息.进程名 = 到文本 (进程信息.szExeFile)
跳出循环 ()
.如果真结束
进程句柄临时 = 下一个进程 (进程快照, 进程信息)
.判断循环尾 ()
关闭句柄 (进程快照)
.如果真结束
编辑框1.内容 = 到文本 (当前窗口句柄)
编辑框2.内容 = 窗口类名
编辑框3.内容 = 窗口标题
编辑框进程ID.内容 = 到文本 (进程ID)
编辑框_进程句柄.内容 = 到文本 (进程句柄)
编辑框_进程路径.内容 = 到文本 (信息.进程全路径名)
编辑框_进程名称.内容 = 信息.进程名
编辑框线程ID.内容 = 到文本 (线程ID)
.默认

.判断结束
返回 (呼叫下一钩子 (钩子句柄, 代码值, 参数一, 参数二)) ' 返回值——用来返回,不然子程序 钩子处理 没有返回值