|
发表于 2018-4-30 21:20:09
|
显示全部楼层
浙江省杭州市
- .版本 2
- .子程序 进程_ID取窗口句柄2, 整数型, 公开, 通过进程ID取得该进程的窗口句柄,超时则返回零
- .参数 进程ID, 整数型, , 该进程的ID;
- .参数 窗口标题, 文本型, 可空, 模糊参数 如果为空,忽略此参数
- .参数 窗口类名, 文本型, 可空, 模糊参数 如果为空,忽略此参数
- .参数 超时, 整数型, 可空, 为空则无限循环
- .局部变量 局_超时时间
- .局部变量 局_开始时间
- .局部变量 局_窗口句柄
- .局部变量 局_进程ID
- .局部变量 局_标题, 文本型
- .局部变量 局_类名, 文本型
- .局部变量 局_寻找模式, 整数型
- 局_开始时间 = 取启动时间 ()
- 局_超时时间 = 选择 (是否为空 (超时) 或 超时 = -1, 31536000, 超时)
- .判断循环首 (取启动时间 () - 局_开始时间 < 局_超时时间)
- 局_窗口句柄 = FindWindowExA_文本 (0, 局_窗口句柄, 字符 (0), 字符 (0))
- .如果真 (IsWindow (局_窗口句柄) = 1)
- .如果真 (IsWindowVisible (局_窗口句柄))
- 局_进程ID = 窗口_句柄取进程ID (局_窗口句柄)
- .如果真 (局_进程ID = 进程ID)
- 局_标题 = 窗口_取标题 (局_窗口句柄)
- 局_类名 = 窗口_取类名 (局_窗口句柄)
- .判断开始 (是否为空 (窗口标题) 且 取反 (是否为空 (窗口类名)))
- .如果真 (寻找文本 (局_类名, 窗口类名, , 假) ≠ -1)
- 返回 (局_窗口句柄)
- .如果真结束
- .判断 (是否为空 (窗口类名) 且 取反 (是否为空 (窗口标题)))
- .如果真 (寻找文本 (局_标题, 窗口标题, , 假) ≠ -1)
- 返回 (局_窗口句柄)
- .如果真结束
- .判断 (取反 (是否为空 (窗口标题)) 且 取反 (是否为空 (窗口类名)))
- .如果真 (寻找文本 (局_标题, 窗口标题, , 假) ≠ -1 且 寻找文本 (局_类名, 窗口类名, , 假) ≠ -1)
- 返回 (局_窗口句柄)
- .如果真结束
- .默认
- 返回 (局_窗口句柄)
- .判断结束
- .如果真结束
- .如果真结束
- .如果真结束
- 处理事件 ()
- .判断循环尾 ()
- 返回 (0)
复制代码
关于上一个帖子我反馈的问题,我对其代码做出了部分调整,并且成功的解决了问题。
在下才疏学浅,如果写的不严谨,可仅做参考~ |
|