为什么取窗口句柄老是0 老是0 我问问到底怎么回事我用易语言写的 代码什么的完全正确 用GetModuleHandle获得易语言写的DLL库模块句...

\u6613\u8bed\u8a00\u4e3a\u4ec0\u4e48\u7ea2\u8272\u8b66\u62122\u7684\u53e5\u67c4\u662f0\uff0c\u60f3\u7f6e\u7236\u7a97\u53e3\u5c31\u5361\u4f4f\u4e86\u00b7\u00b7\u00b7

.\u7248\u672c 2

.DLL\u547d\u4ee4 FindWindowExA, \u6574\u6570\u578b, "user32.dll", "FindWindowExA", ,
.\u53c2\u6570 hParent, \u6574\u6570\u578b, , \u7236\u7a97\u53e3\u53e5\u67c4\uff0c\u6ca1\u6709\u586b 0\u3002\u8fd9\u91cc\u4f60\u586b0\u5c31\u53ef\u4ee5
.\u53c2\u6570 hChildAfter, \u6574\u6570\u578b, , \u5b50\u7a97\u53e3\u53e5\u67c4\uff0c\u6ca1\u6709\u586b 0\u3002\u8fd9\u91cc\u4f60\u586b0\u5c31\u53ef\u4ee5
.\u53c2\u6570 lpszClass, \u6587\u672c\u578b, , \u7a97\u53e3\u7c7b\u540d \uff0c\u7528\u5de5\u5177\u67e5\u770b\uff0c\u4f8b\u5982 \u7cbe\u6613\u7f16\u7a0b\u52a9\u624b
.\u53c2\u6570 lpszWindow, \u6587\u672c\u578b, , \u7a97\u53e3\u6807\u9898 \uff0c\u7528\u5de5\u5177\u67e5\u770b\uff0c\u4f8b\u5982 \u7cbe\u6613\u7f16\u7a0b\u52a9\u624b

\u627e\u53e6\u4e00\u53f0\u7684\u7535\u8111\u4e0a\u53bb\u590d\u5236\u4e0b\u8fd9\u4e2a\u7f3a\u5931\u7684\u6587\u4ef6\u3002
\u53ef\u4ee5\u5c1d\u8bd5\u4f7f\u7528\u817e\u8baf\u7535\u8111\u7ba1\u5bb6\u6765\u4fee\u590d\u7f3a\u5931DLL\u6587\u4ef6
1\u3001\u6253\u5f00\u817e\u8baf\u7535\u8111\u7ba1\u5bb6
2\u3001\u7535\u8111\u8bca\u6240
3\u3001\u8f6f\u4ef6\u95ee\u9898
4\u3001\u4e22\u5931.Dll \u6587\u4ef6
5\u3001\u4e00\u952e\u4fee\u590d
6\u3001\u5b8c\u6210
\u5982\u679c\u8fd8\u662f\u89e3\u51b3\u4e0d\u4e86\uff0c\u53bb\u4e0b\u4e00\u4e2a\u6587\u4ef6\u76f4\u63a5\u590d\u5236\u8fdb\u53bb\u5c31\u80fd\u641e\u5b9a\u4e86

我正在编写玩QQ三国游戏按键模拟,也遇到这问题,但是我不是代码问题,而是游戏隐藏了句柄,windows任务管理器里只有进程显示,我编写的取进程也有显示,也用过时钟周期事件取鼠标所在窗口句柄,就是取不到游戏句柄。正在头痛如何解决。你的问题也许跟我一样,你试试新建记事本取句柄试试,如果成功,你代码无误,反之审查代码,将我的取鼠标所在窗口代码写出如下:

画时钟一个,列表框一个,按钮一个

.程序集变量 取游戏窗口句柄, 整数型
.程序集变量 计时, 整数型

.子程序 _以鼠标取句柄按钮_被单击 ’注释:点击后就可以移动鼠标到其他窗口停住,等待计时4秒完毕,如果本窗口被其他窗口淹没,等待4秒本窗口会再次显示

计时取句柄时钟.时钟周期 = 1000
计时 = 0

.子程序 _计时取句柄时钟_周期事件
计时 = 计时 + 1
以鼠标取句柄按钮.标题 = 到文本 (计时) + “秒” ’注释:按钮标题变成秒计时
取游戏窗口句柄 = 取鼠标所在窗口句柄 ()
窗口标题 = 取窗口标题 (取游戏窗口句柄)
.如果真 (计时 > 4)
.如果真 (取游戏窗口句柄 ≠ 0)
列表框.加入项目 (到文本 (取游戏窗口句柄) + “*” + 窗口标题, )
.如果真结束
计时取句柄时钟.时钟周期 = 0 ’注释:时钟停止
.如果真结束
.如果真 (计时取句柄时钟.时钟周期 = 0)
_启动窗口.总在最前 = 真 ’注释:时间到后本窗口到顶层显示,用于提示完成取句柄。
_启动窗口.总在最前 = 假 ’注释:恢复窗口本来属性

如果你是取自身窗口句柄,取不到的话,你肯定是代码错误
如果是游戏的窗口句柄,取不到也是正常的,有保护的,建设先取下计算器的句柄测试下代码

说明你获取句柄的标题写错了。
或者,这个窗口也经不存在了。

易语言自带的 取窗口句柄 () 只能去他本身程序里窗口的句柄、取不到别的程序里的窗口句柄、

易语言确实好学好用!

扩展阅读:怎么关闭窗口 ... 无效的窗口句柄 1400 ... 如何关闭窗口已满手机 ... 角色迁移后怎么找到他 ... 下列说法中 不正确的是 ... 手机怎么关闭多窗口 ... 易语言取隐藏窗口句柄 ... 一键关闭所有窗口 ... 窗口句柄是唯一的吗 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网