第1个回答 2013-03-30
用精易模块可以实现:
1、.子程序 进程_名取ID, 整数型, 公开, 通过进程名取进程ID;失败返回0
.参数 进程名, 文本型, , 取要进程ID的进程名
.参数 是否区分大小写, 逻辑型, 可空 , 默认为不区分,真=区分
2、.子程序 进程_ID取窗口句柄, 整数型, 公开, 通过进程ID取得该进程的窗口句柄
.参数 进程ID, 整数型, , 该进程的ID;
3、.子程序 窗口_取标题, 文本型, 公开,
.参数 窗口句柄, 整数型, ,
第2个回答 2013-03-27
首先根据进程名取PID(进程标识符)
下面是所用的API
.版本 2
.DLL命令 GetAncestor, 整数型, "user32.dll", "GetAncestor", ,
.参数 hwnd, 整数型
.参数 gaFlags, 整数型
.DLL命令 GetWindowThreadProcessId, 整数型, "user32", "GetWindowThreadProcessId"
.参数 hwnd, 整数型
.参数 lpdwProcessId, 整数型, 传址
.DLL命令 EnumWindows, 整数型, "user32.dll", "EnumWindows"
.参数 lpEnumFunc, 子程序指针
.参数 lParam, 整数型, 传址
下面是子程序
调用:进程标示取窗口句柄("这里写PID")
.版本 2
.子程序 进程标示取窗口句柄, 整数型
.参数 进程标示符, 整数型
EnumWindows (&EnumWindowsProc, 进程标示符)
返回 (进程标示符)
.子程序 EnumWindowsProc, 整数型
.参数 hwnd, 整数型
.参数 lParam, 整数型, 参考
.局部变量 lpPid, 整数型
.局部变量 oldPid, 整数型, 静态
.如果真 (oldPid = 0)
oldPid = lParam
.如果真结束
GetWindowThreadProcessId (hwnd, lpPid)
.如果 (lpPid = oldPid)
lParam = GetAncestor (hwnd, #GA_ROOTOWNER)
返回 (0)
.否则
lParam = 0
返回 (1)
.如果结束
第3个回答 2013-03-27
取窗口句柄吗? 添加API: .版本 2.DLL命令 _取窗口句柄, 整数型, "user32.dll", "FindWindowA"
.参数 窗口类名, 文本型
.参数 窗口标题, 文本型
代码:.版本 2
.支持库 spec.子程序 __启动窗口_创建完毕
.局部变量 窗口类名, 文本型
.局部变量 窗口标题, 文本型调试输出 (_取窗口句柄 (窗口类名, 窗口标题))
第4个回答 2013-03-27
你还不是要先用SPY取得类名先 。