AutoHotKey:无需人工交互即可捕获和操作 windows
AutoHotKey: catching & manipulating windows without human interaction
一些听起来很基本的东西花了很多时间:AutoHotKey 脚本如何被编程为等待特定的 window然后接受它,Send {enter}
,关闭它?在这种情况下,这是一个烦人的设置确认对话框,每次为程序打开某些文件类型时都会出现。一个小的并发症是 windows 标题每次都改变,而它的 ahn_class
与母程序共享——我试图通过捕捉 window 的像素来解决这些问题尺寸改为:
#IfWinActive ahk_class SALFRAME
~LButton::
WinGetActiveStats, , width, , ,
if (width = "681") {
Send {enter}
}
return
这行得通,但是当对话出现时强制点击对话的某个地方,这比以前更快,但仍然不是真正的自动化。我还尝试了 WinWaitActive
等等,但它似乎没有捕捉到 window (在某些时候我尝试编写的一些脚本实际上杀死了 window 时脚本被执行了,但只执行了一次,没有触及脚本之后的后续 windows 运行)。使用 AutoHotKey 在没有人工输入的情况下等待和终止某些 windows 的正确方法是什么?
#Persistent
SetTimer, Send_Enter_to_specific_window, 50
return
Send_Enter_to_specific_window:
IfWinActive ahk_class SALFRAME
{
WinGetPos,,, width,, A
if (width = "681")
Send {enter}
}
return
一些听起来很基本的东西花了很多时间:AutoHotKey 脚本如何被编程为等待特定的 window然后接受它,Send {enter}
,关闭它?在这种情况下,这是一个烦人的设置确认对话框,每次为程序打开某些文件类型时都会出现。一个小的并发症是 windows 标题每次都改变,而它的 ahn_class
与母程序共享——我试图通过捕捉 window 的像素来解决这些问题尺寸改为:
#IfWinActive ahk_class SALFRAME
~LButton::
WinGetActiveStats, , width, , ,
if (width = "681") {
Send {enter}
}
return
这行得通,但是当对话出现时强制点击对话的某个地方,这比以前更快,但仍然不是真正的自动化。我还尝试了 WinWaitActive
等等,但它似乎没有捕捉到 window (在某些时候我尝试编写的一些脚本实际上杀死了 window 时脚本被执行了,但只执行了一次,没有触及脚本之后的后续 windows 运行)。使用 AutoHotKey 在没有人工输入的情况下等待和终止某些 windows 的正确方法是什么?
#Persistent
SetTimer, Send_Enter_to_specific_window, 50
return
Send_Enter_to_specific_window:
IfWinActive ahk_class SALFRAME
{
WinGetPos,,, width,, A
if (width = "681")
Send {enter}
}
return