Снегопат
https://snegopat.ru/forum/

Opensource
https://snegopat.ru/forum/viewtopic.php?f=1&t=768
Страница 2 из 5

Автор:  the1 [ 01 июн 2017, 08:38 ]
Заголовок сообщения:  Re: Opensource

А в ответ - тишина)

Автор:  orefkov [ 15 июн 2017, 11:25 ]
Заголовок сообщения:  Re: Opensource

Ребят, имеющий глаза да увидит.
Сейчас по факту - багов и вылетов, происходящих по вине "закрытого" кода в snegopat.dll - нет.
Я и так уже всю логику снегопата вынес в часть, видимую для всех пользователей - всё лежит открыто в core\engine, core\v8api, core\scripts
Отладчик AngelScript - вот, положен core\tools.
Даже исходники скриптов на TypeScript - выложены.
Трассировка выполнения AngelScript кода - пожалуйста, включайте в командной строке, всё видно.
При этом ещё и дамп виртуальных таблиц всех объектов 1С, с которыми снегопат взаимодействует автоматом делается.
Что вам в самой snegopat.dll то может быть интересно?
Как там прокладки на ассемблере формируются между кодом AngelScript и виртуальными функциями 1С?
Или механика установки перехватов?
Так это детали реализации, которые один раз сделаны и больше их трогать и не надо, нет в них ничего интересного.
Сама snegopat.dll только движок AngelScript создаёт, скармливает ему тексты файлов из core\engine, подключает к нему регэкспы, да по v8api\*.v генерит переходники для вызова методов 1С.
Ну еще из AngelScript в IDispatch пробрасывает да ActiveScript'ы запускает, что еще в openconfe делалось.
Нет там ничего особо интересного в snegopat.dll.
С выхода reborn'а это уже так. И что, за это время много человек полезли копаться в core\engine?
Считанные единицы наверное. Пока вон Артуру не припёрло в 8.3.10 - полез и разобрался.
Так что код из snegopat.dll открыт не будет, ибо нет в этом никакого практического смысла.

Теперь о дальнейшем.
Всё-таки на этой неделе я сделал и запустил систему ограничения получения обновлений.
Уже давно декларировалось получение обновлений снегопата только в течении определённого периода, после чего надо было оплачивать новый период.
Но дальше деклараций дело не шло, и на сайте не стояло никаких средств ограничения получения обновлений.
Я всё старался оттягивать этот момент, но дальше уже так не получится - иначе проект просто остановится в развитии - сейчас даже платный хостинг не окупается, и сайт работает с моего домашнего компа.
Надеюсь, мне всё-таки удастся превратить Снегопат в мою основную работу, плюс источник дохода для членов комьюнити, реально участвующих в развитии проекта.

Автор:  7OH [ 15 июн 2017, 11:31 ]
Заголовок сообщения:  Re: Opensource

Да - пока не припёрло - не полезли.
Немного поковырялись и поняли как оно взаимодействует.
Сейчас на повестке дня (в процессе доработки) - машинный анализ дампов, чтобы указать на некорректные смещения функций под новые платформы.
Вручную довольно долго искать несоответствия.
---
И какой будет период (начало и конец) ?

Автор:  orefkov [ 15 июн 2017, 12:05 ]
Заголовок сообщения:  Re: Opensource

7OH писал(а):
И какой будет период (начало и конец) ?

В левой части сайта в разделе "Мой snegopat.dll" написан срок поддержки.

Автор:  7OH [ 15 июн 2017, 12:11 ]
Заголовок сообщения:  Re: Opensource

"∞" можно считать заслугой или изменения ещё не введены ?

Автор:  orefkov [ 15 июн 2017, 12:34 ]
Заголовок сообщения:  Re: Opensource

Изменения уже введены.

Автор:  JohnyDeath [ 15 июн 2017, 12:35 ]
Заголовок сообщения:  Re: Opensource

Саш, а подскажи, пожалуйста, по последнему изменению:
"Добавлена возможность запускать snegopat.dll вне 1С как консольный процесс для выполнения AngelScript"

Как этим пользоваться и вообще для чего может понадобиться?

Автор:  Magister [ 15 июн 2017, 12:46 ]
Заголовок сообщения:  Re: Opensource

orefkov писал(а):
Ну еще из AngelScript в IDispatch пробрасывает да ActiveScript'ы запускает, что еще в openconfe делалось.
Нет там ничего особо интересного в snegopat.dll.
Это да, но некоторых вещей не хватает :)
Мне, например, при работе над SynEdit не хватало возможностей работы с Variant-массивами, из-за чего пришлось делать вот такое:
Код:
// Обертка для передачи строки в массиве Variant
// Там, похоже, только IDispatch можно передавать...
class strWrapper {
   string _val;
   strWrapper(const string& str) {
      _val = str;
   }
}

Но это такое, жить можно.
В остальном - согласен.

А, и по отладке AngelScript - пытался запустить (где-то полгода назад), но так и не получилось...

Автор:  orefkov [ 15 июн 2017, 13:02 ]
Заголовок сообщения:  Re: Opensource

JohnyDeath писал(а):
Саш, а подскажи, пожалуйста, по последнему изменению:
"Добавлена возможность запускать snegopat.dll вне 1С как консольный процесс для выполнения AngelScript"
Как этим пользоваться и вообще для чего может понадобиться?

Я потихоньку собираюсь служебные скрипты, типа get_latest и тому подобные переделывать.
И возможностей простых батников мне мало, частенько так и думаешь, что проще из вин-апи какую-нибудь функцию дернуть, и язык бы помощнее, чем bat-script.
А в снегопате уже есть и языковый движок, и слой для работы с дллками и прочее. Чего уж тогда добру пропадать в рамках одного 1С-Конфигуратора?
Поэтому если запустить
Код:
runner -exec путькsnegopat.dll путькфайлу.as [путькпапке с *.v]

то собственно, загрузится этот файл, и всё что в нём #include "xxx.as", из *.v файлов сформируется апи для движка AngelScript, и вызовется main().
Print работает, в консоль пишет.

Автор:  michael_pokrov [ 15 июн 2017, 13:28 ]
Заголовок сообщения:  Re: Opensource

Саш, в свое время, как только приобрел Снегопат я в 8.2 только им и пользовался ... но потом начались отставания релизов, ошибки ... и уже 2 года я от него отвык.
Готов продлить подписку, но ... как запустить его под платформой 8.2.19.83 и 8.3.9.1850 (32х) даже не знаю (не запускается ни под одной!) ... батник для запуска делал (станцевать осталось только :-( ) ... и самое, что интересное - на главной странице:
На данный момент Снегопат может работать в 1С версий:
8.2.19
8.3.4
8.3.5
8.3.6
8.3.7
8.3.8
8.3.9 (32х-битная)
8.3.10 (32х-битная)
(насколько я понял это новая версия может работать с этими релизами платформы) но я не могу запустить ... что только не делал (перечитал весь форум ... ) ... на одном компьютере установлены 2 сервера 8.2 и 8.3 (все 64х ... разнесены по портам), причем клиент 8.3.9 стоит как 64х, так и 32х. Как в таких условиях запустить конфигуратор с "расширенными возможностями Снегопата". Если найду способ и поработаю ДЕНЬ без ошибок ... завтра же оформлю подписку.

Страница 2 из 5 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/