Руководство разработчика

Функция СОЗДАТЬ_ПРОЦЕСС

Функция СОЗДАТЬ_ПРОЦЕСС позволяет запускать внешние приложения (расширенный вариант оператора ВЫПОЛНИТЬ).

ФУНКЦИЯ ТИП_ЧИСЛО: СОЗДАТЬ_ПРОЦЕСС(ТИП_СТРОКА: командная_строка,
	рабочая_папка, опции)

Параметры

командная_строка
Имя запускаемого файла и параметры запуска. При необходимости передачи длинной строки (длина которой превышает 255 символов) следует использовать объект типа список.
рабочая_папка
Стартовая папка для создаваемого процесса.Если параметр задан как пустая строка, то используется текущая папка создающего процесса (Инфо-Бухгалтера).
опции
Дополнительные параметры, задаваемые через запятую:
Команды показа окна создаваемого процесса:
HIDE
Спрятать окно;
MIN
Свернуть окно;
MAX
Развернуть окно на весь экран.

Вызываемое приложение может игнорировать эту начальную команду показа.

Прочие команды:
WAIT
Признак ожидания завершения запускаемого процесса. Инфо-Бухгалтер блокируется до завершения созданного процесса (синхронный запуск), при этом есть возможность получить его код возврата. При отсутствии опции WAIT Инфо-Бухгалтер запускает и забывает о созданном процессе (асинхронный запуск).
ADMIN
Признак запуска процесса с администраторскими правами. Если операционная система поддерживает UAC и Инфо-Бухгалтер запущен без администраторских приввилегий, то выдается окно запроса поднятия прав. При указании этой опции параметры CONSOLE_TITLE и CONSOLE_ATTR игнорируются.
NOFSREDIR
При работе в 64-битной Windows может потребоваться отключение перенаправления файловой системы. При указании этой опции не выполняется перенаправление файловой системы из System32 в SysWOW64.
CONSOLE_TITLE
Заголовок окна консольного приложения. Задается так: CONSOLE_TITLE=<текст заголовка>. Если параметр не задан, то в заголовок консольного окна выводится имя исполняемого файла. Приложение может игнорировать этот параметр и установить какой-то свой заголовок.
CONSOLE_ATTR
Начальные атрибуты консольного окна. Задается так: CONSOLE_ATTR=<число>. Число соответствует битовой маске для одного байта. Младшие 4 бита отвечают за цвет текста, старшие – фона:
БитЗначение
1синяя (B) составляющая цвета текста
2зеленая (G) составляющая цвета текста
3красная (R) составляющая цвета текста
4яркость цвета текста
5синяя (B) составляющая цвета фона
6зеленая (G) составляющая цвета фона
7красная (R) составляющая цвета фона
8яркость цвета фона

Возвращаемое значение

Функция возвращает код завершения программы. В случае ошибки запуска процесса (как в синхронном, так и в асинхронном режиме) функция возвращает –1. Например, ошибка может возникнуть, если указан неправильный путь к программе. В соответствии с общепринятым соглашением, код 0 обозначает безошибочное завершение программы, а любой другой код (например, 1) возвращается, если выполнение программы завершилось с ошибкой. В случае асинхронного запуска Инфо-Бухгалтер не может получить код завершения внешней программы, поэтому при отсутствии ошибки запуска процесса функция всегда возвращает 0.

Получить целочисленный идентификатор порожденного процесса можно указанием параметра "last_child_process_id" функции АТРИБУТ.

Пример использования

ВИН_ПУТЬ_ВП = "C:\Program Files\Windows NT\Accessories\wordpad.exe"
 //Путь к текстовому редактору
ВИН_ПУТЬ_ВП_ТЕМП = "C:\Program Files\Windows NT\Accessories\"
рез = СОЗДАТЬ_ПРОЦЕСС(ВИН_ПУТЬ_ВП,ВИН_ПУТЬ_ВП_ТЕМП,"WAIT")
ЕСЛИ рез = 0 ТО
     СООБЩЕНИЕ("Создать процесс удалось!")
ИНАЧЕ
     СООБЩЕНИЕ("Не удалось создать процесс!")
КОНЕЦ_ЕСЛИ

См. также: