Autohotkey WinExist 找不到打开的 cmd

Auto Hotkey WinExist does not find open cmd

我正在使用自动热键测试以下代码。如果尚未打开,我想打开一个 cmd 控制台。每次我 运行 它都会创建一个新的控制台,忽略之前已经打开的控制台。

#z::Run https://autohotkey.com  ; Win+Z

^!n::  ; Ctrl+Alt+N
if WinExist("Untitled - cmd"){
    WinActivate
    MsgBox GUI "MyGui" already exists.
    }
else{
    Run cmd
    MsgBox GUI "MyGui" does not exist.
    }
return

我的另一个问题是,当我使用以下代码时,一切都按预期工作,但是当我将 untitled - Notepad 更改为 untitled - notepad 时,发生了与第一个摘录中相同的事情,虽然创建了一个记事本以前的一个仍然有效。任何关于为什么会发生这种情况的建议都会非常有帮助,谢谢。

#z::Run https://autohotkey.com  ; Win+Z

^!n::  ; Ctrl+Alt+N
if WinExist("Untitled - Notepad"){
    WinActivate
    MsgBox GUI "MyGui" already exists.
    }
else{
    Run Notepad
    MsgBox GUI "MyGui" does not exist.
    }
return

将其放在脚本的顶部:

SetTitleMatchMode 2

Documentation

这允许您使用像 WinExist 这样的命令与部分 window 名称匹配。