Снегопат 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/ |