Запуск сценариев OneScript без окна консоли
Для тех, кто пишет сценарии на скриптовом языке OneScript, появление окна консоли (терминал, DOS окно) выглядит естесственным. Через него происходит взаимодействие с программой, ввод данных и вывод результата. Но бывает требуется выполнить задачу, вывести данные в файл и не более того. И возможно это нужно будет сделать во время работы пользователя за монитором. Вот где может потребоваться запуск сценариев без показа окна консоли. А так же если Вы создали приложение на OneScript и хотите его распространять удобно было бы создать для него EXE файл. И было бы здорово, если в свойствах этого файла будет информация о версии, названии продукта, названии компании и т.д. Это можно сделать с помощью данной разработки.
Эта тема не раз обсуждалась в телеграмм канале Чат по движку OneScript и библиотеке пакетов oscript-library
. Решение конечно было найдено и оно заключаеся в том, чтобы скрипт стартовал как запущенный сторонней программой процесс, для которого показ окна запрещен. Моя разработка основана на несколько другом принципе. А именно создается экземпляр класса HostedScriptEngine
, который создает процесс с переданным ему кодом сценария.
Программа написана на C# как консольное приложение с типом выходных данных "Приложение Windows".