Платформа 1С:Предприятие 8.x позволяет выполнять запуск сторонних приложений встроенными средствами. Например, если нужно запустить браузер для открытия ссылки, то достаточно написать следующий программный код:
ЗапуститьПриложение("http://1clancer.ru");
Таким же способом можно выполнять запуск любого другого приложения, явно указав путь к исполняемому EXE-файлу.
ЗапуститьПриложение("C:\Windows\notepad.exe");
После выполнения этой строчки кода будет запущено стандартное приложение Windows - "Блокнот".
Использовать этот метод глобального контекста больше имеет смысл на стороне клиента (тонкого или толстого), так как в абсолютном большинстве случаев после запуска приложения работать с ним из 1С:Предприятия не представляется возможным. Т.е. после открытия браузера обрабатывать его события или получать из него данные платформа не сможет.
Но выполнять взаимодейтсвие с запущенным таким способом приложением все же можно! Например, выполнив запуск ожидаем когда запущенное приложение сформирует ответный файл и затем читаем его. Если использовать метод "ЗапуститьПриложение()", то нам придется проверять наличие ответного файла в цикле и в случае появления доступа к этому файлу - обработать его.
Рациональней было бы запустить приложение, дождаться завершения его выполнения и затем выполнить все необходимые действия. А если запуск выполняется на клиентской машине, то показывать окно приложения вообще может оказаться не обязательно.
Для этих целей можно использовать COM-объект "WScript.Shell":
WshShell = Новый COMОбъект("WScript.Shell"); WshShell.Run(<команда>,<вид окна приложения>, <требуется ожидать завершения>);
Подробнее:
А) - команда системы (путь к исполняемому файлу или любая другая команда в формате DOS).
Б) - вариант показа окна приложения. Указывать не обязательно. Возможные значения:
1 - Активизирует и показывает окно. Если окно минимизировано или максимизировано, система восстанавливает его к оригинальному размеру и положению. Используется при первом открытии окна программы.
2 - Активизирует окно в свернутом режиме.
3 - Активизирует окно и разворачивает на весь экран.
4 - Показывает окно в его новом размере и положении. Активным остается текущее окно.
5 - Активизирует окно и показывает его в текущем размере.
6 - Минимизирует окно и активизирует следующее на панеле задач.
7 - Показывает окно как минимизированное. Активное окно остается активным.
8 - Показывает окно в его текущем состоянии. Активное окно остается активным.
9 - Активизирует и показывает окно. Если окно минимизировано или максимизировано, система восстанавливает его к оригинальному размеру и положению. Используется для восстановления минимизированного окна.
10 - показывает окно в том-же состоянии, что и окно вызывающей программы.
В) - нужно ли ожидать завершения команды: 0 - не нужно ждать завершения выполнения команды, 1 - ждать окончания выполнения команды.
Вот так выглядит запуск приложения "Блокнот" этим способом:
WshShell = Новый COMОбъект("WScript.Shell"); WshShell.Run("C:\Windows\notepad.exe", 1, 0);
Но опять же, ожидания завершения работы приложения не будет. Для этого третий параметр нужно выставить в значение 1.
WshShell = Новый COMОбъект("WScript.Shell"); WshShell.Run("C:\Windows\notepad.exe", 1, 10)
Пример использования COM-объекта "WScript.Shell" можно посмотреть в обработке "Yandex.Wordstat", где с его помощью запускается утилита отправки JSON-запроса через Yandex.API.
Минусом второго способа является его не универсальность, ведь работа COM-объекта возможна только для случаев, когда платформа (или сервер 1С:Предприятия) запущены под управлением операционной системы Windows.