Post by skydiver » 24 Oct 2023, 03:49
刚刚接触autohotkey ,尝试下面的demo代码,但是发现无法正确获得PID,{}内的动作并没有没执行,并且MsgBox打印的notepad_pid,与任务管理里查到的notepad.exe的真实PID不一致
Code: Select all
Run "notepad.exe",,, ¬epad_pid ; 测试发现win11环境下,该命令获取的进程ID不准确
if notepad_id := WinWait("ahk_pid " notepad_pid,, 5)
{
WinActivate "ahk_id " notepad_id
WinMove 0, 0, A_ScreenWidth/4, A_ScreenHeight/2
}
MsgBox notepad_pid
MsgBox notepad_id
使用任务管理里查询的到的PID,运行如下代码,可正常执行{}内动作。
Code: Select all
notepad_pid_2 := "117596"
if notepad_id_2 := WinWait("ahk_pid " notepad_pid_2,, 5)
{
WinActivate "ahk_id " notepad_id_2
WinMove 0, 0, A_ScreenWidth/4, A_ScreenHeight/2
}
MsgBox notepad_pid_2
MsgBox notepad_id_2
求助,各位是否有遇到同样的问题?
谢谢~
刚刚接触autohotkey ,尝试下面的demo代码,但是发现无法正确获得PID,{}内的动作并没有没执行,并且MsgBox打印的notepad_pid,与任务管理里查到的notepad.exe的真实PID不一致
[Codebox=autohotkey file=Untitled.ahk]Run "notepad.exe",,, ¬epad_pid ; 测试发现win11环境下,该命令获取的进程ID不准确
if notepad_id := WinWait("ahk_pid " notepad_pid,, 5)
{
WinActivate "ahk_id " notepad_id
WinMove 0, 0, A_ScreenWidth/4, A_ScreenHeight/2
}
MsgBox notepad_pid
MsgBox notepad_id[/Codebox]
使用任务管理里查询的到的PID,运行如下代码,可正常执行{}内动作。
[Codebox=autohotkey file=Untitled.ahk]notepad_pid_2 := "117596"
if notepad_id_2 := WinWait("ahk_pid " notepad_pid_2,, 5)
{
WinActivate "ahk_id " notepad_id_2
WinMove 0, 0, A_ScreenWidth/4, A_ScreenHeight/2
}
MsgBox notepad_pid_2
MsgBox notepad_id_2[/Codebox]
求助,各位是否有遇到同样的问题?
谢谢~