如何在另一个应用程序完成后终止 ahk 脚本

如何在另一个应用程序完成后终止 ahk 脚本

我有一个简单的 AHK 脚本,用于启动 Google Chrome 并重新映射 2 个键,以帮助我更轻松地浏览浏览器。该脚本有 2 个功能:

  • 启动 Chrome
  • 设置导航快捷键(仅当 Chrome 处于焦点时)

我想添加一个参数,在 Chrome 关闭后关闭 AHK 脚本,但不确定如何做到这一点。

我知道我可以编写一个.bat脚本来管理这个问题,它将允许我运行一个循环,TASKLIST|FIND最终可以在找不到 Chrome 时关闭脚本,但我不想在我的任务栏中有一个额外的 CMD 窗口占用空间。

我喜欢 AHK 可以启动 Chrome,同时还允许我设置按键,但是是否可以运行某种命令,例如:

if chrome is not running, close AHK script

编辑-根据哈利的回答:

RunWait , "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
ExitApp

#IfWinActive, ahk_class Chrome_WidgetWin_1

Insert::Send !{Left}
Delete::Send !{Right}

编辑- 虽然上述代码运行良好,但具有不同路径和二进制的相同代码会被 AHK 拒绝:

RunWait , "C:\Program Files\Epic Games\UE_4.25\Engine\Binaries\Win64\UE4Editor.exe"
ExitApp

#IfWinActive, ahk_class UnrealWindow
Shift::MButton

这将返回错误:

在此处输入图片描述

路径确实正确。

答案1

不要使用 AutoHotkey 运行命令,而是使用 RunWait 命令

RunWait 将等待程序完成后再继续,因此可以跟进 ExitApp 命令 无条件终止脚本。

相关内容