「向窗口发送消息」模块可以给 指定句柄的窗口 发送 "Alt+N" 消息吗?

使用问题 · 806 次浏览
Sunsh 创建于 2023-08-03 11:00

如题,我只找到了,可以给窗口发送按键"N"的参数,如下图:

但是该怎么给窗口发送"Alt + N"消息呢?


回复内容
CL 2023-08-03 11:01
#1

估计没有,键盘输入没法针对窗口。 先激活窗口,然后再模拟输入。

Sunsh 回复 CL 2023-08-03 11:03 :

在动作运行时,一些弹出的窗口的焦点不容易确定啊🤣🤣

CL 回复 Sunsh 2023-08-03 11:06 :

如果位置确定,就模拟鼠标移动过去点击一下。另外问题最好包含背景信息,在操作什么软件,解决什么问题,所以需要实现这个功能。 说不定原始问题使用别的方式更容易解决。

Sunsh 回复 CL 2023-08-03 11:12 :

比较常见的例子就是「Quicker动作的保存」,当用「手势」关闭「动作的编辑窗口」时,弹出来的提示窗口,通过模拟按键的方式进行控制选择,时常没有反应。我想用「向窗口发送消息」的方式实现控制,这样步骤简单,效果稳定、也不容易误触引发别的问题


CL 回复 Sunsh 2023-08-03 11:27 :

如果能得到句柄,可以试试激活一下,然后模拟alt+y。 上面发送消息的方式,也可以试试先发送alt,再发送y,或许也可以确认。

不过类似这样的窗口,我感觉还是手动点一下比较踏实。

Sunsh 回复 CL 2023-08-03 11:29 :

我都试了,单个、多个并行、加延迟,置顶窗口、窗口前台化,都不太好使🤣🤣

CL 回复 Sunsh 2023-08-03 11:31 :

🤣🤣 为啥呢,它得不到焦点么?

Sunsh 回复 CL 2023-08-03 11:33 :

就是没反应啊,我也不知道,但是在动作运行完之后,手动按下组合键就可以控制成功,这好像说明他又是有焦点的....

CL 回复 Sunsh 2023-08-03 11:37 :

我这里测试是可以的。在这个状态下,通过快捷键触发动作模拟Alt+y,可以关闭这个窗口。


Sunsh 回复 CL 2023-08-03 12:41 :

可以试试这个,以管理员身份运行cmd,然后发送alt+y,看能否打开cmd窗口,中间可以加延迟


CL 回复 Sunsh 2023-08-03 12:47 :

管理员身份会出windows的UAC窗口,这个没法通过动作操作的,没有权限。

Sunsh 回复 CL 2023-08-03 13:05 :
确实没权限,连句柄都获取不到🤣🤣还有是一些应用启动的时候,也会弹出UAC,因为我系统基本上处于裸奔状态,所以UAC没有完全关上。但为了给UAC发送快捷键,省略确认的那一步,而且我这里是真的直接给发送模拟按键没有效果,所以拐了个很大的弯。今天忽然想起来「向窗口发送消息」,但不能发送组合键,就比较可惜了
乐昂岚【接定制】 回复 CL 2023-08-03 15:04 :

我记得可以通过批处理跳过UAC,在cmd代码段前加一段代码并以bat批处理运行,相当于默认允许以管理员身份允许

Sunsh 回复 乐昂岚【接定制】 2023-08-03 20:54 :

好的,我去了解下

Sunsh 回复 CL 2023-08-05 13:13 :

再请教一下,想给微信的登录窗口发送Enetr,但是不知道是数值错误,还是微信登录窗口不支持,目前还没有效果?


CL 回复 Sunsh 2023-08-05 14:21 :

这个我也没有弄过,在VS里测试正常么?

Sunsh 回复 CL 2023-08-05 17:25 :

额,我这没vs🤣🤣

回复主贴