Не официальная документация :(

Обсуждения программы xStartDesigner
Ответить
arhangelsoft
Пассажир
Сообщения: 4
Зарегистрирован: Пн мар 21, 2016 10:03 am
Благодарил (а): 0
Поблагодарили: 0
Контактная информация:

Не официальная документация :(

Сообщение arhangelsoft » Вт мар 22, 2016 9:49 am

Таки разобрался как же оно работает и устроено, буду дополнять по мере изучения.

Установка xStartDesigner
  1. Скачиваем xStartDesigner с оф. сайта. Раз вы сюда зашли, значит у вас он уже есть.
  2. Устанавливаем в туже папку, где установлен сам xStarter, т.к. так проще работать, и на данный момент ПО не затирает файлы xStarter.
Настройка xStartDesigner
  1. В файле xStartDesigner.ini или в запущенном xStartDesigner на узле "Options" указываем пути к папке плагинов xStarter и рабочему каталогу xStarter.
Подготовка к работе:
  1. Запускаем xStarter
  2. Открываем настройки, меню "Файл", далее пункт "Настройки...":
    • На закладке "Логи"ставим галочку "Записывать все события файловой системы в лог-фаил программы".
  3. Создаем секцию для разработки и тестирования (У меня это "dev")
  4. В секции dev создаем задачу:
    • На закладке "Расписание и информация" совсем отключаем автоматический запуск задачи.
    • На закладке "Дополнительно" ставим галочку "Не запускать задачу ,если она все ещё работает"
    • На закладке "Лог задачи", под-закладка "Опции" ставим галочки "Детальный лог выполнения" и "Не показывать окошки с записями лога задачи"
продолжение следует....
Пытайся, пытайся, пытайся снова... и никогда не сдавайся, и однажды все сложится так, как нужно.

arhangelsoft
Пассажир
Сообщения: 4
Зарегистрирован: Пн мар 21, 2016 10:03 am
Благодарил (а): 0
Поблагодарили: 0
Контактная информация:

Re: Не официальная документация :(

Сообщение arhangelsoft » Вт мар 22, 2016 2:19 pm

Локализации, как добавить больше языков к плагинам:
В xStartDesigner есть ветка Languages:
В выпадающий список вводите например поддержку белорусского, указываем belorussian, жмем кнопку "Save to all files",
теперь для программы и плагинов автоматически сгенерирован новый набор файлов локализаций для перевода на белорусский.
За основу берется АНГЛИЙСКИЙ язык.
Новые локализации хранятся в папке Languages:
%ВАШ_ЯЗЫК%.lng
и
%ВАШ_ЯЗЫК%_Plugins.lng

обычные, текстовые файлы, спец. ПО для их перевода не нужно.

Секция "Action nodes":
В данном разделе находится структура областей действия функций плагина.
Например "Приложения" (Англ. пер. Processes) содержат "Службы" (Англ. пер. Services),
можно добавить свою секцию используя кнопку на тулбаре.
Пытайся, пытайся, пытайся снова... и никогда не сдавайся, и однажды все сложится так, как нужно.

arhangelsoft
Пассажир
Сообщения: 4
Зарегистрирован: Пн мар 21, 2016 10:03 am
Благодарил (а): 0
Поблагодарили: 0
Контактная информация:

Re: Не официальная документация :(

Сообщение arhangelsoft » Пт мар 25, 2016 10:20 am

Секция "Plugins":
Самое интересное - плагины.

Каждый плагин представляет набор модулей (Unit-ы) различного уровня действия:
1. Sys unit level - самый низкий уровень, находится вначале итогового скрипта, в нем можно определять свои типы данных, импортируемые функции из DLL и функции, расширяющие возможности макро-языка интерпретатора.
2. Middle level unit - средний уровень, содержимое располагается перед кодом run level unit'а. В данном модуле можно как расширять макро-язык (свои типы данных, импорт функций из dll и т.д.), так и писать спец. функции (закладка Functions в дизайнере), однако с этой частью пока я не разобрался.
3. Run level unit - скрипт высокого уровня. Реализует действие, его визуальный вид, структуры входных и выходных данных, дизайнер окна действия, скрипт визуальной формы, скрипт работы непосредственно самого действия. Доступен выбор категорий к которым относится действие, место расположения с выбором узла из Action nodes.

Пример их использования, например такой:
Вы написали, или используете DLL, вам надо описать типы данных и функции используемые для работы с библиотекой, и эти типы данных вы так же хотели бы использовать и в самом действии.

Типы данных и экспортируемые функции описываете в Sys Level Unit,
но этот код все ещё слишком громоздкий, что бы вот так сразу оперировать им на высоком уровне, потому можно обернуть громозкий код
в функции на Middle уровне, а на Run уровне просто использовать их.

Такой пример реализован в плагине Windows.spm, по сути это даже не плагин - набор WinAPI функций и библиотека простого кода использования этих самых WinAPI.


Язык разработки скриптов - pascal, а интерпретатор, который использует разработчик - RemObjects PascalScript в ядре xStarter. Он выполняет написанный вами код.

Этот же интерпретатор используется в ПО Inno Setup, из документации которого можно узнать базовые возможности интерпретатора, способы экспорта функций из внешних библиотек. Или на самом сайте RemObjects или их GitHub :)

(не закончено..)
Пытайся, пытайся, пытайся снова... и никогда не сдавайся, и однажды все сложится так, как нужно.

Ответить