精易论坛

标题: 所有窗口操作失效,但是窗口句柄是对的 [打印本页]

作者: mengxinqiujiao    时间: 2025-4-8 23:08
标题: 所有窗口操作失效,但是窗口句柄是对的
所有窗口操作失效,话不多说,上代码
上面能看到有窗口闪动 移动位置 窗口关闭
窗口标题能取到,窗口句柄也是对的
但是所有窗口操作都失效了
准确来说是有两台电脑是这样,重装系统也没用,运行库也装了,有老哥遇到过类似的情况嘛

作者: 小白马哒哒    时间: 2025-4-8 23:14
下面还有子窗口。要操作的是子窗口吧
作者: mengxinqiujiao    时间: 2025-4-8 23:19
小白马哒哒 发表于 2025-4-8 23:14
下面还有子窗口。要操作的是子窗口吧

要操作的是主窗口,毕竟如果我想关闭一个窗口的话应该不是找他的子窗口,而且关闭主窗口子窗口自然就关了,而且移动的话也是移动主窗口呀,毕竟又不能拆开
作者: 是可可吖    时间: 2025-4-8 23:28
句柄数组  调试输出一下看看哪个是具体的句柄,打个比方是第一个  那你下面就写 句柄数组[1]而不是句柄数组

补充内容 (2025-4-8 23:30):
话说,直接取句柄取不到吗?为什么要模糊遍历?
作者: mengxinqiujiao    时间: 2025-4-8 23:34
是可可吖 发表于 2025-4-8 23:28
句柄数组  调试输出一下看看哪个是具体的句柄,打个比方是第一个  那你下面就写 句柄数组[1]而不是句柄数组 ...

因为后续需要多开测试,跑题了亲
作者: 是可可吖    时间: 2025-4-8 23:38
mengxinqiujiao 发表于 2025-4-8 23:34
因为后续需要多开测试,跑题了亲

多开也是一样取句柄,窗口标题和类名又不会变,变的是句柄而已,而且你需要控制的是主窗口句柄
作者: 算法艺术家    时间: 2025-4-8 23:44

你先别用手动打开浏览器,用 进程_创建 () 的命令打开,用返回的进程ID 取窗口句柄
然后再操作试试,如果可以的话 就说明之前取的句柄不是主句柄
局进程ID = 进程_创建 (浏览器路径, , , )
窗口句柄 = 进程_ID取窗口句柄 (局进程ID, , “Chrome_WidgetWin_1”, 5000, 真)
作者: mengxinqiujiao    时间: 2025-4-8 23:45
是可可吖 发表于 2025-4-8 23:38
多开也是一样取句柄,窗口标题和类名又不会变,变的是句柄而已,而且你需要控制的是主窗口句柄 ...

标题会变的,不变的只有类名,而多开的话直接枚举所有窗口是最简单的,亲,别纠结取句柄了,能取到,没取错就行了,怎么取的不重要,现在的问题是对窗口操作无效
作者: mengxinqiujiao    时间: 2025-4-8 23:49
算法艺术家 发表于 2025-4-8 23:44
你先别用手动打开浏览器,用 进程_创建 () 的命令打开,用返回的进程ID 取窗口句柄
然后再操作试试,如果 ...

emmm,是用填表的初始化打开的进程,用初始化返回的进程ID取的句柄也是一样的,手动创建跟进程创建的应该都没问题,现在的问题是我其他电脑都没问题,但是有两台有这个问题,无法移动与关闭,但是其他电脑没问题,重装系统跟运行库都不行
作者: 是可可吖    时间: 2025-4-8 23:54
mengxinqiujiao 发表于 2025-4-8 23:45
标题会变的,不变的只有类名,而多开的话直接枚举所有窗口是最简单的,亲,别纠结取句柄了,能取到,没取错就行 ...

那你多开肯定是要绑定窗口再进行操作啊

补充内容 (2025-4-8 23:55):
算了,当我没说吧,可能是我没理解你的问题
作者: 算法艺术家    时间: 2025-4-9 00:01
mengxinqiujiao 发表于 2025-4-8 23:49
emmm,是用填表的初始化打开的进程,用初始化返回的进程ID取的句柄也是一样的,手动创建跟进程创建的应该都 ...

没被第三方软件干扰?比如杀毒 安全卫士之类的
作者: 1043603367    时间: 2025-4-9 14:02
有没有考虑权限问题




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4