Перейти на главную страничку сайта (список статей, файлы для скачивания)

ФОРУМ (здесь можно обсудить эту статью, а также саму программу AutoHotkey и проблемы её использования)

Проект перевода документации AutoHotkey: перечень переведённых статей и статей в работе.

Оригинал статьи в AutoHotkey.chm: "Tutorial - Launch a program or document (continued)"

Ник переводчика: Дед Мазай.

Настоящее имя переводчика: Антон Иваненко, г.Москва.

Туториал - Запуск программы или документа (продолжение)

Для запуска программы или документа в развёрнутом, свёрнутом, или скрытом окне, используйте параметры "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.

Перейти на главную страничку сайта (список статей, файлы для скачивания)

© 2007 http://www.script-coding.com При любом использовании материалов сайта обязательна ссылка на него как на источник информации, а также сохранение целостности и авторства материалов.