Функция СОЗДАТЬ_ПРОЦЕСС
Функция СОЗДАТЬ_ПРОЦЕСС позволяет запускать внешние приложения (расширенный вариант оператора ВЫПОЛНИТЬ).
ФУНКЦИЯ ТИП_ЧИСЛО: СОЗДАТЬ_ПРОЦЕСС(ТИП_СТРОКА: командная_строка, рабочая_папка, опции)
Параметры
- командная_строка
- Имя запускаемого файла и параметры запуска. При необходимости передачи длинной строки (длина которой превышает 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 ТО СООБЩЕНИЕ("Создать процесс удалось!") ИНАЧЕ СООБЩЕНИЕ("Не удалось создать процесс!") КОНЕЦ_ЕСЛИ