Нужна помощь в написании скрипта? Close

Вы можете задать любой вопрос по программе Autohotkey в нашей группе Вконтакте. Если решение требует более высокой квалификации- можно обратиться непосредственно ко мне.

ВконтактеГруппа Вконтакте Электронная почтаЭлектронная почта Личная страницаСимаков Яков ВК
home icon Все разделы
comunity icon Нужна помощь?

Запуск программы и открытие файла -Autohotkey

Для запуска программы или документа в развёрнутом, свёрнутом, или скрытом окне, используйте параметры "max", "min" или "hide" соответственно:

#z:: Run, Notepad, , max Run, Notepad, , min Run, Notepad, , hide Return

В нашем примере по нажатию комбинации клавиш Win+Z будут запущены три окна Блокнота - развёрнутое, свернутое и скрытое.

Мы также можем заставить программу использовать конкретную папку как свою рабочую директорию, например:

#c::Run, %comspec% /k, C:\My Documents

Так, комбинация клавиш Win+C запускает окно командной строки в папке C:\My Documents. Переменная %comspec%, с помощью которой мы в нашем примере вызываем окно командной строки, напрямую работает с исполняющим файлом cmd.exe, который в системе как правило находится по адресу C:\Windows\system32\cmd.exe.

Для задания параметров, добавляйте их сразу же за именем программы или документа, как показано в этих примерах:

Run, %comspec% /k dir, C:\My Documents Run, Notepad.exe "C:\My Documents\Address List.txt" Run, %ProgramFiles%\AutoHotkey\AutoHotkey.exe "C:\Scripts\Test Script.ahk" param1 "param2 with spaces" param3

Во втором и третьем примерах, параметры, содержащие пробелы, заключаются в кавычки. Это делается из соображений безопасности, для предупреждения возникновения возможных проблем. А вот скажем рабочая директория, даже содержащая в своем имени пробелы, в кавычках не нуждается, как проиллюстрировано в нашем первом примере.

Также в программе реализована поддержка специальных слов, известных как "системные глаголы" (system verbs). В первом примере мы открываем окошко свойств указанного файла, второй пример иллюстрирует печать указанного документа:

Run, properties "C:\Address List.txt" Run, print "C:\Address List.txt"

Команда RunWait устанавливает значение встроенной переменной ErrorLevel, записывая в нее код возврата программы, которая была запущена. Например, следующий скрипт отобразит ненулевой код ошибки, который возвратит командный интерпретатор, сигнализируя о проблеме:

RunWait, %comspec% /c dir c:\NonExistent.txt, , hide MsgBox, %ErrorLevel%

Первая строка вышеприведенного примера означает следующее: запустить командный интерпретатор ("%comspec%") в скрытом окне ("hide") в режиме немедленного завершения после исполнения команды ("/с"), дать ему команду вывести информацию о файле c:\NonExistent.txt ("dir c:\NonExistent.txt") и дождаться завершения его работы ("RunWait"). Поскольку файл "NonExistent.txt" не существует, о чём красноречиво говорит его название, данная команда обречена на неудачу. В связи с этим далее строкой "MsgBox, %ErrorLevel%" мы выводим код ошибки, который обязательно будет ненулевым. Возможно, данный пример несколько искусственнен, однако он дает понятие о работе со встроенной переменной ErrorLevel.

Автор перевода: Дед Мазай
Настоящее имя переводчика: Антон Иваненко
Источник: http://www.script-coding.com/AutoHotkey/Tutorial2.html
Под редакцией ahk-wiki.ru от 21.08.19