Создание EXE файла запуска стартового сценария

Если Вы создали приложение на OneScript и хотите его распространять удобно было бы создать для него EXE файл. И было бы здорово, если в свойствах этого файла будет информация о версии, названии продукта, названии компании и т.д. Посмотрите как это можно сделать с помощью OneScriptNoConsole.exe.

  • Скачайте с гитхаб OneScriptNoConsole файл OneScriptNoConsole.zip.
  • Распакуйте, поместите OneScriptNoConsole.exe в какой либо каталог.
  • В этот же каталог скопируйте библиотеки односкрипта, необходимые при компиляции. Они находятся в каталоге bin с установленным OneScript.
  • Запустите OneScriptNoConsole.exe.
  • Программа попытается найти и прочитать из этого же каталога файл настроек settings.cfg.
  • Не найдя его она создаст файл error.log в этом же каталоге, где опишет ошибку, а так же создаст по шаблону файл настроек settings.cfg такого содержимого.
  • # Значения ключей можно указывать в кавычках или без них.
    
    # Имя exe файла вашего приложения. /outfilename=""MyApp""
    #/outfilename=[string]
    
    # Путь до запускаемого файла. Обычно это стартовый сценарий.
    # Файл будет внедрен в exe файл. Извлечь стартовый сценарий можно будет
    # запустив exe файл с ключем /pullout.
    # Для Windows это может выглядеть так: /script=""C:\777\Приложение.os""
    # Для Linux это может выглядеть так: /script=""/home/vlad/Projects/444/Приложение.os""
    #/script=[string]
    
    # Источник сценария. Или файл на диске, или строка с текстом сценария, внедренная в exe файл.
    # Сценарии не использующие пакеты односкрипта из каталога lib могут быть запущены из строки, 
    # внедренной в exe файл. Если же будут задействованы пакеты односкрипта из каталога lib
    # во избежание ошибок файл сценария необходимо будет сначала записать на диск.
    # Сценарий будет записан под именем temp.os а затем запущен.
    # "file" - старт из файла (по умолчанию)
    # "string" - старт из строки
    /startFrom="string"
    
    # Название компании.
    #/company=[string]
    
    # Краткое описание сборки.
    #/description=[string]
    
    # Авторское право на программу.
    #/copyright=[string]
    
    # Информация о продукте.
    #/product=[string]
    
    # Название сборки как информационного продукта.
    #/title=[string]
    
    # Сведения о торговой марке.
    #/trademark=[string]
    
    # Версия сборки. /version=""1.0.0.0""
    #/version=[string]
    
    # Номер версии файла. /fileversion=""1.0.0.0""
    #/fileversion=[string]
    

  • Раскомментируйте нужные Вам ключи и задайте их значения. После этого снова запустите файл OneScriptNoConsole.exe.
  • В том же каталоге будет сформирован EXE файл с именем, заданным ключем "/outfilename=".
  • MyApp - это имя по умолчанию для ключа "/outfilename=".
  • Свойства exe файла
    Свойства exe файла
  • В том же каталоге будет сформирован файл oscript.cfg, каталог lib с файлом package-loader.os. Не удаляйте четыре файла библиотек односкрипта. В каталог lib при необходимости скопируйте нужные Вам пакеты библиотек. В большинстве случаев это не требуется. Обратите внимание, наш файл oscript.cfg будет немного отличаться от односкриптового файла oscript.cfg строкой:

    lib.system = lib
    
    Так что простое копирование из каталога bin может привести к неудачному запуску.
  • После этого можно удалить файлы settings.cfg, error.log и файл стартового сценария. Файл стартового сценария будет интегрирован в исполняемый EXE файл.
  • Так как окна терминала у нас не будет все сообщения при компиляции и при работе скомпилированной программы будут записаны в файл error.log.

    Если вы запускаете скомпилированный EXE файл в терминале не забудьте перейти командой cd в каталог программы. При создании ярлыка программы так же нужно будет указать рабочий каталог программы.