Как получить заголовок активного окна с помощью AutoHotKey?

Я написал этот короткий тестовый код, но он не сработал. Что я делаю неправильно?

F12::
WinGetTitle, Title, A ;
MsgBox, "%Title%"

Отображаемый результат: "

Ответы

Ответ 1

Я удалил a; и добавил возврат, и это сработало...

F12::
WinGetTitle, title, A
MsgBox, "%title%"
return

Ответ 2

Если вы не вернете результат, он будет работать по всему вашему файлу.

Возможно, что-то не работает в дальнейшем.

Не думайте; повлияет на это.

Все после a; исключается из кода в качестве комментария.

Ответ 3

Лучшей практикой, вероятно, будет использование WinGetActiveTitle:

F12::
   WinGetActiveTitle, Title
   MsgBox, The active window is "%Title%".
return

Ответ 4

Подойдет WinGetActiveTitle или WinGetTitle. Обратите внимание, что вывод WinGetTitle содержит больше, чем заголовок окна. Вы можете удалить конечную часть с именем программы, например, "- Google Chrome".

WinGetActiveTitle, Title
StringGetPos,pos,Title,%A_space%-,R
if (pos != -1)
    Title := SubStr(Title,1,pos)

Ответ 5

В AutoHotKey 2 вы можете использовать это:

title := WinGetTitle("A")  ; "A" matches "Active" window

В AutoHotKey 1 вы можете использовать:

WinGetActiveTitle, title