Запуск приложений и открытие документов



START-APP: <команда до конца строки>

Запускает приложение и, не дожидаясь окончания его работы, переходит к выполнению следующей строчки задачи.

В качестве аргумента к слову START-APP: можно использовать путь к нужной программе, имя исполняемого файла и все необходимые параметры командной строки. Если в качестве аргумента указан не исполняемый файл, a документ, то nnCron откроет этот документ в программе, которая зарегистрирована в системе для работы с этим типом файлов.

Примеры:

#( test_start_app
\ каждый рабочий день в 10:00 запускаем "Интернет Эксплорер"
Time: 0 10 * * 1-5 *
Action:
START-APP: C:\Program Files\Internet Explorer\iexplore.exe
\ после запуска "ИЭксплорера" оставшаяся часть задачи продолжит выполняться    
)#
#( test_start_app1 \ по понедельникам и четвергам в 2:30 ночи запускаем резервное копирование Time: 30 2 * * 1,4 * Action: START-APP: nnbackup.exe sync -i d:\fido -o g:\backup\fido -s -v -e -da )#

Существует вариант этого слова с постфиксным расположением параметров:

S" app_name" START-APP

Обратите внимание, что постфиксное слово START-APP нельзя использовать в консоли. Чтобы запустить приложение из консоли, используйте слово StartApp ( si a u -- ?):

0 S" app_name" StartApp DROP

См. также "Опции запуска приложений и документов", PROC-WAIT-IDLE.


START-APPW: <команда до конца строки>

Работает аналогично слову START-APP:, но ожидает завершения приложения после запуска, т. е. строка задачи, следующая за START-APPW: выполнится только после окончания работы указанного приложения.

Пример:

#( test_start_appw
\ каждый рабочий день в 10:00 запускаем "Интернет Эксплорер"
Time: 0 10 * * 1-5 *
Action:
START-APPW: C:\Program Files\Internet Explorer\iexplore.exe
\ оставшаяся часть задачи не выполнится, пока
\ пользователь не закроет окно "ИЭксплорера"
)#

START-APPW: позволяет обрабатывать код возврата (errorlevel) запускаемой программы: он записывается в переменную ExitCodeProc.

Пример:

\ выводить на экран сообщение, если 'errorlevel' отличается от нуля
START-APPW: xxx.exe
ExitCodeProc 0 <> IF MSG: "Error %ExitCodeProc%!" THEN

Помимо стандартного набора опций запуска приложений, перед START-APPW: можно указать опцию WaitFor: <ms или hh:mm> которая останавливает работу приложения, если оно не завершилось самостоятельно в течение указанного времени.

Существует вариант этого слова с постфиксным расположением параметров:

S" app_name" START-APPW

Обратите внимание, что постфиксное слово START-APPW нельзя использовать в консоли. Чтобы из консоли запустить приложение "с ожиданием", используйте слово StartAppWait ( si a u -- ?).

0 S" app_name" StartAppWait DROP

См. также "Опции запуска приложений и документов".


QSTART-APP: <команда до конца строки>

Работает аналогично слову START-APP:, но перед стартом заданного приложения выводит на экран запрос: "Согласны ли вы запустить такую-то программу?". Приложение будет загружено только в том случае, если пользователь нажал кнопку Yes.

Пример:

#( test_start_app
\ каждый рабочий день в 17:30 запускаем "Интернет Эксплорер"
\ предварительно испросив у пользователя разрешения
Time: 30 17 * * 1-5 *
Action:
    QSTART-APP: C:\Program Files\Internet Explorer\iexplore.exe
)#

См. также "Опции запуска приложений и документов", PROC-WAIT-IDLE, QueryStartTimeout:, QueryStartAnswer:.


Опции запуска приложений и документов

Перед START-APP:, START-APPW: и QSTART-APP: можно использовать опции запуска приложений и документов, которые управляют процессом запуска программ и их отображения на экране. Опции должны быть отделены друг от друга пробелом, знаком табуляции или переводом строки.

StartIn: "dir_path" задает каталог, в котором будет запускаться приложение.
ShowNormal
SWHide
ShowMaximized
ShowMinimized
ShowNoActivate

управляет отображением окна приложения на экране:

  • стартовать в обычном режиме
  • скрыть окно программы
  • максимизировать (развернуть на весь экран)
  • минимизировать (свернуть в значок)
  • не активизировать окно при старте
StartPos: <x> <y> устанавливает абсолютную позицию окна на экране (в пикселах)
StartSize: <xsize> <ysize> устанавливает размер окна (в пикселах)
HighPriority
IdlePriority
NormalPriority
RealtimePriority
AboveNormalPriority
BelowNormalPriority

устанавливает указанный приоритет процесса.

Работает только в WinNT/2000/XP, а слова AboveNormalPriority и BelowNormalPriority - только в Win2000/XP.

AsService

запускает приложение как службу (сервис). Это означает, что стартовавшая программа не будет завершаться при logoff пользователя. Опция AsService позволяет nnCron исполнять роль утилиты SRVANY.EXE из WinNT Res. Kit.

Работает только в WinNT/2000/XP.

Title: "console_title" прямо при запуске задает имя консольного окна. Работает только с консольными окнами.

WaitFor: <ms>
WaitFor: <hh:mm>

приостанавливает работу приложения, если оно не завершилось самостоятельно в течение указанного времени.

Работает только со словом START-APPW:.

Пример:

#( backup_fido_and_tools
\ NoActive
Time: 30 2 * * 1,4 *
Action:
    StartIn: "\tools\nnbackup"
    ShowMinimized NormalPriority
    START-APPW: nnbackup.exe sync -i d:\fido -o g:\backup\fido -s -v -e -da
    LOG: "log\nncron.log" " > Exit Code: %ExitCodeProc% > FIDO backup"
   
    StartIn: "\tools\nnbackup"
    ShowMinimized NormalPriority
    START-APPW: nnbackup.exe sync -i d:\tools -o g:\backup\tools -s -v -e -da -x *.lck
    LOG: "log\nncron.log" " > Exit Code: %ExitCodeProc% > Tools backup"
)#