|   |   | 
| 
 | Подключение к 7.7 из 8.3 по OLE/COM. ↓Ø (Волшебник 06.01.2025 22:45) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Иван Петров 03.01.25✎ 16:00 | 
        В 8.3 в функции НаСервере выполняю код:
 БазаОЛЕ = Новый COMОбъект("V1CEnterprise.Application"); По функциональной затее, подключение может выполняться только на сервере. Т.е. COM-объект создаётся в сеансе пользователя, под которым запущен сервер 8.3. Используется 8.3.20. Живёт это на Windows 2003 Server. Замешательство у меня вот в чём. То ли мне кажется, то ли так и должно быть, но одновременно в сеансе создаётся только один COM-объект. Попытка вызвать функцию создания COM-объекта, пока существует предыдущий экземпляр, вызывает ошибку. Так и должно быть — один сеанс, один экземпляр COM-объекта? Или всё таки может быть одновременно несколько COM-объектов? | |||
| 1
    
        ChMikle 03.01.25✎ 16:07 | 
        м.б. несколько подключений к разным базам одновременно, если вы про это     | |||
| 2
    
        Иван Петров 03.01.25✎ 16:22 | 
        (1) У меня до подключения к самой базе (БазаОЛЕ.Initialize(БазаОЛЕ.RMTrade) ход не доходит, выхватываю ошибку ещё на создании СОМ-объекта. 
 Для наглядности, в функции НаСервере выполняется, упрощённо, такой код: БазаОЛЕ = Новый COMОбъект("V1CEnterprise.Application"); БазаОЛЕ.Initialize(БазаОЛЕ.RMTrade, "/D" + Путь + " /n" + Пользователь + " /p" + Пароль, "NO_SPLASH_SHOW"); Делаем первый вызов функции. Всё сработало. На сервере в Диспетчере задач появился процесс 7.7 под пользователем сервера 8.3. Он пока делает свою работу. В это время выполняем нашу функцию второй раз и она падает на первой строчке (создание СОМ объекта). И вот понять бы. Я что-то делаю не так (очень бы хотелось чтобы так оно и было) или так и должно быть и иначе не будет (а вот это засада ибо хотелось сделать "веб-OLE-сервер" для доступа к 7.7 "снаружи"). | |||
| 3
    
        Иван Петров 03.01.25✎ 16:23 | 
        2+
 Если первый вызов функции отработал, уничтожил СОМ-объект, повторный вызов функции будет успешным. | |||
| 4
    
        Волшебник 03.01.25✎ 17:00 | 
        Объект называется V77.Application, а не то, что Вы придумали     | |||
| 5
    
        Волшебник 03.01.25✎ 17:04 | 
        Хотя если там v7plus, то всё может быть     | |||
| 6
    
        Иван Петров 03.01.25✎ 17:10 | 
        (4) Из ЖКК.  
 V1СEnterprise.Application — версия независимый ключ; V77.Application — версия зависимый ключ; V77S.Application — версия зависимый ключ, SQL версия; V77L.Application — версия зависимый ключ, локальная версия; V77M.Application — версия зависимый ключ, сетевая версия. Для спорта попробую и более традиционный ключ, мало ли. | |||
| 7
    
        Иван Петров 03.01.25✎ 17:22 | 
        К (2).
 Как говорят в КВН-е: "Так, стоп!" Посыпаю свою голову оливье. Был напуган. Таки отваливается всё на Initialize. Это уже оптимистичнее, можно попробовать подпереть костыли v7AppServer.dll. | |||
| 8
    
        Злоп 03.01.25✎ 19:16 | 
        Ну дык пользователи скорее всего разные должны быть которые клюшечные     | |||
| 9
    
        Иван Петров 03.01.25✎ 19:49 | 
        (9) Не. У хоккеиста (клюшечный пользователь) каталог пользователя не указан. Т.е. под ним можно открыть сколько угодно (ладно, больше одного) сеансов 7.7.
 Я проверял гипотезу из (1) и подсовывал разные базы 7.7 для подключений — не помогло. В загашнике лежал v7AppServer.dll. Попробовал использовать, но это какая-то боль. | |||
| 10
    
        Злоп 03.01.25✎ 20:31 | 
        (2) для "веболе" сервера есть нормальная вк под 77 на ИС     | |||
| 11
    
        Злоп 03.01.25✎ 20:37 | 
        В одном сеансе делать ДВА раза 
 БазаОле = .... То есть на одну и ту же переменную? Так себе затея, я бы тоже упал... Попробуй массив для БазаОле или базаОое1 базаоле2 итд | |||
| 12
    
        Иван Петров 03.01.25✎ 20:53 | 
        (10) Если мы об одном, то в комментах не очень её нахваливают. 
 (11) Ну не так же. :) Есть функция, которая создаёт БазаОЛЕ и выполняет в ней запрос с использованием 1с++ (хотя не суть). Я не присваиваю в функции одной переменной два разных СОМ объекта. Открываем два сеанса 8.3 и в каждом жмём кнопку, которая вызывает эту функцию. Вот если в первом сеансе 8.3 запрос ещё не завершился, во втором сеансе 8.3 случается облом на Initialize. | |||
| 13
    
        Иван Петров 03.01.25✎ 20:56 | 
        (10) Пока я ковыряю v7Server.dll. 
 Да, это работает как заявлено. И на первый взгляд даже корректно, но пока что у меня при использовании такой матрёшки зависают все вызовы функций в 7.7, которые используют 1с++. | |||
| 14
    
        Chai Nic 03.01.25✎ 21:00 | 
        (0) А при чем тут сеанс? В восьмерке нет глобальных переменных сеанса на сервере. Есть параметры сеанса, но это другое.. даже если в них получится запихать КОМ-объект, не факт что он внезапно не превратится в тыкву.     | |||
| 15
    
        AAA 03.01.25✎ 21:17 | 
        Если Вам надо отдавать данные из 7.7 в 8.3, то лучше сделайте это через http сервис. И летать будет по скорости. И геморроя меньше     | |||
| 16
    
        Иван Петров 03.01.25✎ 21:24 | 
        (14) Можем назвать это другими словами. 
 Есть процесс (с точки зрения Виндовс) сервера 8.3, который вызывает функцию общего модуля НаСервере. НаКлиенте №1 выполняется код, который вызывает эту функцию. Всё ок, подключение установлено, данные выгребаются из 7.7. НаКлиенте №2 запускаем такой же отчёт и запросто ловим ситуацию, когда функция падает на этапе Initialize. Вот чтобы вообще было просто, код функции. Общий модуль. НаСервере. Функция ПодключитьБазу(ВнешняяБаза) Экспорт
	Попытка
		БазаОЛЕ = Новый COMОбъект("V1CEnterprise.Application");
	Исключение
		БазаОЛЕ = ""; // Ритуальное обнуление. 
		//
		Возврат ОбменНаСервере.СоздатьОтвет("Ошибка создания COM-объекта.", ОписаниеОшибки());
	КонецПопытки;
	//
	Путь = ВнешняяБаза.Путь;
	Пользователь = ВнешняяБаза.Пользователь;
	Пароль = ВнешняяБаза.Пароль;
	//						
	Если БазаОЛЕ.Initialize(БазаОЛЕ.RMTrade, "/D" + Путь + " /n" + Пользователь + " /p" + Пароль, "NO_SPLASH_SHOW") Тогда
		Возврат БазаОЛЕ;
	Иначе
		БазаОЛЕ = ""; // Ритуальное обнуление. 
		//
		Возврат ОбменНаСервере.СоздатьОтвет("Ошибка подключения к базе.", "Метод Initialize вернул Ложь.");
	КонецЕсли; 
КонецФункции | |||
| 17
    
        Иван Петров 03.01.25✎ 21:21 | 
        (15) Отдавать из 7.7 в 8.3 просто, но неинтересно. :)
 Интересно когда выборку данных из 7.7 инициирует 8.3 и тут же в СКД-шном отчёте рисует красивые диаграммы. :) | |||
| 18
    
        AAA 03.01.25✎ 21:26 | 
        (17)В чем тайный интерес рисовать диаграммы "тут же"? Передадите данные и рисуйте диаграммы сколько хотите. Разделите процесс передачи данных и рисование диаграмм. Данные - это данные, а отчет - это отчет по этим данным. Зачем объединять эти 2 разных процесса? Вы же все равно эти данные пишете в базу 8.3 и к чему эта гонка, чтобы сразу диаграммы рисовать. Боитесь не успеть?     | |||
| 19
    
        Иван Петров 03.01.25✎ 21:54 | 
        (18) Хорошо. Я не буду сразу показывать выборку в 8.3, а буду записывать. :)
 Что поменялось с точки зрения проблемы в (0)? :) Смотрите. 1. Есть ассортимент баз 7.7 (розница, опт, производство, бухгалтерия, кадры), из которых хотелось бы поиметь данные в 8.3, по критериям, которые будут заданы на стороне 8.3. 2. Есть 8.3, которая в сторону 7.7 смотрит по СОМ-соединению, а наружу http-сервисом. 3. Есть 8.3-потребитель. Которая работает в браузере, на смартфоне, на чём там ещё она умеет и "показывает" пользователю "компоновку" выборок из 7.7 в п.1. Так вот. :) В п.2. создаётся СОМ-объект, возвращает данные и уничтожается. Дальше начинается передача данных в п.3. В этот момент СОМ-объект уже уничтожен. И не имеет вообще никакого значения что я буду делать с данными в п.3 и сколько это будет происходить — "транзакция" с СОМ-объектом завершена. Во что я сейчас упёрся и не могу подебить. Пока что у меня получается так, что процесс сервера 8.3 может в один момент оперировать только одним СОМ-объектом. И это о-о-очень узкое место. Хочу найти возможность как сделать так, чтобы сервер 8.3 мог параллельно выполнять несколько (десятки) СОМ-соединений с 7.7. Вариант что я тупой и что-то делаю не так для меня был бы идеальным. Особенно, если бы понять что я делаю не так. :) | |||
| 20
    
        Chai Nic 03.01.25✎ 22:01 | 
        (19) А можно без ком обойтись. Просто запускать приложение 7.7, а в нём при запуске делать нужные дела и класть результаты в файл.     | |||
| 21
    
        Иван Петров 03.01.25✎ 22:05 | 
        (18) Есть вот такая чудная штука. 
 https://www.1cpp.ru/forum/YaBB.pl?num=1179245025;start=all Древняя и развития не получила. Но, как минимум, познавательная. Всё бы с ней хорошо, но не срастается у меня с её использованием работать с ODBCDataBase 1с++. Перебрал уже несколько вариантов вызовов с "обеих сторон", увы и ах. А без 1с++ выковыривать данные из 7.7 (гигабайты и десятки гигабайт) вообще не вариант. | |||
| 22
    
        Иван Петров 03.01.25✎ 22:11 | 
        (20) А параметры класть тоже "в тумбочку" (в файлик)? :)
 Собственно, почему бы и не да. Только нужно решить два момента: 1. Понять что запущенный процесс завершился и можно искать файлик с ответом. 2. Передать в запущенный процесс 7.7 параметры "что выполнять". | |||
| 23
    
        Chai Nic 03.01.25✎ 23:03 | 
        (22) 
 1. Глобальный контекст (Global context) ЗапуститьПриложение (RunApp) Синтаксис: ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>, <КодВозврата>) 2. Параметры можно передать через файл. И ещё, в 7.7 можно в параметрах командной строки любую фигню дополнительно написать, это ей не мешает запуститься, если обязательные параметры заданы. А в процедуре параметры командной строки достать и обработать то, что мы передали. | |||
| 24
    
        Иван Петров 04.01.25✎ 00:19 | 
        (23) "Есть нюанс" с выполнением ЗапуститьПриложение() НаСервере. 
 Никогда это не проверял, но: "При запуске "1С:Предприятия" в пакетном режиме, а также при вызове метода на сервере будет сгенерировано исключение." И в то же время: "Доступность: Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер." | |||
| 25
    
        Злоп 04.01.25✎ 01:52 | 
        Какая о хреновая концепция имхо. Запуск приложения - вещь небыстрая. А когда много сеансов 77 будет стартовать и выполняться - задержки на инициализации переменных и построение запросов...
 . Почему не сделать так чтобы 8ка складывала свои требования" к 77 в промежуточный внешний контейнер, а на сервере кратилсябы один-два-три сеанса-робота 77 (в которых уже все инициализировано, запросы параметризированы и подготовлены - только параметры подсовывай), которые забирают входящие запросы из внешнего контейнера, обрабатывают и выкладывают результат в другой внешний контейнер. Такие контейнеры можно тупо на SQLite сделать или в том же скуле... Так не пойдет? | |||
| 26
    
        Злоп 04.01.25✎ 01:53 | 
        Или может проще обращаться к данным 77 из 8 как к внешнему источнику данных напрямую, без использования 77?     | |||
| 27
    
        Иван Петров 04.01.25✎ 02:20 | 
        (26) Да можно и так. Как совсем уже крайняя мера.
 Просто потому что придётся писать ещё более прямые запросы чем в 1с++. Хотелось оставаться в рамках более дружелюбной среды 1с++, а в случае с БухИтогами вообще в родной среде 7.7. Я из любопытства проверил как отрабатывает веб-сервер 8.3 в файловом варианте. (Не работаю я с файловыми базами.) Ну чтобы исключить фантазию "а вдруг файловый веб-сервер запускает на каждый веб-запрос отдельный процесс 8.3 и тогда случится чудо". :)) Конечно же чудо не произошло. :) Всё стабильно, второй веб-запрос обламывается на подключении к 7.7 базе. | |||
| 28
    
        Иван Петров 04.01.25✎ 02:33 | 
        (25) Всё верно. Инициализация OLE-объекта рабочей 7.7 базы занимает 3-5 секунд запросто. 
 Чуть выше писал. Ребята сто лет назад заморочились v7AppServer.dll — держали очередь уже открытых сеансов целевой 7.7 базы. Я упоролся чутка иначе. Сделал пустую конфигурацию, в которой одна глобальная процедура (загрузка 1с++) и несколько функций (по числу баз, для инициации ODBCDataBase). Создание объекта и его выгрузка из памяти происходят быстро — 1 секунда. Процесс занимает около 13 метров оперативки. В эту базу подключается 8.3 по OLE и дальше прямыми запросами шерстит целевые базы 7.7. Приятный бонус — весь код пишется на стороне 8.3. Ещё бонус — несколько выборок из разных баз 7.7 можно склеивать в запросах на стороне 8.3. По скорострельности меня всё устроило. Усреднённый запрос в одну базу 7.7 с выборкой оборотов за год с момента нажатия "Сформировать" и до вывода Диаграммы занимает 4-6 секунд. Половина из этого времени уходит на перекладывание данных туда-сюда и компоновку отчёта в СКД. Одна засада — я упёрся в "однозадачность". :) | |||
| 29
    
        Злоп 04.01.25✎ 05:36 | 
        А если бля начала тупо попробовать для теста ограничиться средой ш7. Вместо 8.3 использовать 77. Что получится? А вдруг?     | |||
| 30
    
        ChMikle 04.01.25✎ 10:38 | 
        Попытка
 v7 = Новый COMObject("V1CEnterprise.Application"); Открыта = v7.Initialize(v7.RMTrade, "/D""" + Магазин.Путь + """ /N" + Магазин.Пользователь + " /P" + Магазин.Пароль, "NO_SPLASH_SHOW"); Исключение v7 =""; ТекстовыйФайл.ДобавитьСтроку("----------Ошибка подключения "+СокрЛП(Магазин)); возврат; КонецПопытки; у меня с скулевой базой 1С 7.7 работает (база лежит на другом сервере, не где 1С 8.3 сервак) | |||
| 31
    
        ChMikle 04.01.25✎ 10:38 | 
        V7Plus.dll из типовой поставки     | |||
| 32
    
        Иван Петров 04.01.25✎ 11:29 | 
        (29) Для спорта можно посмотреть как 7.7 поведёт себя, если в ней создать больше одного ОЛЕ-объекта других 7.7 баз. 
 Это больше изыскания в ключе если один процесс 7.7 сможет оперировать больше чем одним ОЛЕ-объектом 7.7, то можно ломать голову что я делаю не так с серверным процессом 8.3. Залез в нафталин и нагуглил что-то похожее на документацию к "Веб-расширению 7.7". Тоже познавательное чтиво. Для установки соединения V7 Scripting Engine использует два метода: «прямой» метод и с использованием промежуточного файла. Прямой метод позволяет подключаться только к одному 1С:Предприятию, запущенному на компьютере с Web-сервером, при этом файл параметров (см. далее) не используется. Метод, использующий промежуточные файлы, позволяет распределять нагрузку по нескольким 1С:Предприятиям, запущенным на компьютере с Web-сервером или на других компьютерах в локальной сети. Более того, используемые 1С:Предприятия могут работать с различными информационными базами, что дает возможность на одном Web-сервере запускать несколько различных Web-приложений для выполнения различных задач.
 Для работы V7 Scripting Engine необходимо, чтобы 1С:Предприятие было запущено заранее. Если при запуске 1С:Предприятия было указано соединение через файл, то указанный файл создается автоматически. | |||
| 33
    
        Злоп 04.01.25✎ 11:31 | 
        (30) несколько сеансов клюшек открывает?     | |||
| 34
    
        Иван Петров 04.01.25✎ 11:39 | 
        (30) Уточнение. Этот код выполняется НаКлиенте или НаСервере? 
 НаКлиенте будет так. Каждый сеанс клиента порождает свои СОМ-объекты. Т.е. 10 клиентов 8.3 запустят 10 СОМ-объектов 7.7. Так четверть века и работают все обмены по ОЛЕ между "семёрками". У 7.7 сервера нет в принципе, сколько обменов запустили, столько пар "процесс — ОЛЕ-подключение" и создалось. Здесь особой проблемы никогда и не было. А я то с сервером бодаюсь. Дошёл уже даже до наркоманской затеи "а как-бы под каждый вызов http-сервиса открывать сессию тонкого клиента". :)) Хорошая ж затея. Жаль что нереальная. :)) | |||
| 35
    
        AAA 04.01.25✎ 11:53 | 
        я потерял ход мысли. Мы все видимо несколько разное имеем в виду
 Что за http-сервис, раньше не было про него разговора. Web сервер - это сервер на котором опубликована база 8.3 или что ? | |||
| 36
    
        Иван Петров 04.01.25✎ 12:23 | 
        (35) Так все ж слова правильные и все они вместе. :) 
 Веб-сервер (технически это Апач) — это средство публикации базы 8.3. http-сервис — это объект 8.3, в котором обрабатываются входящие http-запросы. Обработчик http-сервиса 8.3 выполняется НаСервере. Вот этот обработчик и создаёт СОМ-соединение с базами 7.7. Вся моя боль в том, что у меня не получается обрабатывать параллельно много (больше одного) входящих запросов, создающих СОМ объект 7.7. | |||
| 37
    
        AAA 04.01.25✎ 12:53 | 
        (36)а http запросы откуда лезут ?     | |||
| 38
    
        Иван Петров 04.01.25✎ 13:25 | 
        (37) Из более другой 8.3. Физически в другом дата-центре.     | |||
| 39
    
        AAA 04.01.25✎ 13:35 | 
        (38)посадите все 7.7 на обработки ожидания, пусть анализируют  свои триггеры. Из 8.3 выставляйте им триггеры, и пусть 7.7 своими http запросами отправляют в 8.3 требуемые данные, которые обработает http сервис для 7.7     | |||
| 40
    
        ChMikle 04.01.25✎ 14:42 | 
        (34) на сервере     | |||
| 41
    
        Иван Петров 04.01.25✎ 15:31 | 
        (40) И можно запустить несколько параллельно выполняющихся (хотя бы 20-30 секунд) СОМ-подключений и все они успешно выполняются?     | |||
| 42
    
        Иван Петров 04.01.25✎ 15:37 | 
        (39) Да. Такую "очередь обменов" давно уже реализовал. Как только появилась первая необходимость обменов с 7.7 в физически разных сетях. 
 И да, "дежурящие" сеансы 7.7 мониторят постоянно нет ли для них новых заданий. А теперь мне захотелось новых ощущений. :) | |||
| 43
    
        Волшебник 04.01.25✎ 17:57 | 
        (42) А может хватит разврата?     | |||
| 44
    
        Иван Петров 04.01.25✎ 21:00 | 
        (43) Рано ещё закапывать стюардессу. До 2038-го года ещё полно времени. 
 Опять же, восьмёрка ещё сырая. | |||
| 45
    
        ChMikle 05.01.25✎ 09:14 | 
        (41) попробуйте , у меня две базы с этим кодом одновременно работают , висят в трее 2 процесса     | |||
| 46
    
        Злоп 05.01.25✎ 10:05 | 
        (45) а к одной и той же базе два подключения работают? Да еще под одним и тем же пользователем?     | |||
| 47
    
        Иван Петров 05.01.25✎ 10:17 | 
        (45) На какой операционной системе это работает?     | |||
| 48
    
        ChMikle 05.01.25✎ 10:45 | 
        (46) если каталог пользователя в 7.7 не прописан, то работать должно ... 
 (47) windows server 64 bit | |||
| 49
    
        Злоп 05.01.25✎ 11:04 | 
        (48) должно. Я бы проверил.     | |||
| 50
    
        Иван Петров 05.01.25✎ 11:10 | 
        (48) А какой именно сервер? :) 2003? 2008?     | |||
| 51
    
        skafandr 05.01.25✎ 12:54 | 
        (50) Попробуйте подключение под разными пользователями     | |||
| 52
    
        Иван Петров 05.01.25✎ 17:02 | 
        (51) Я не то что под разными пользователями, я в разные базы 7.7 подключаюсь.     | |||
| 53
    
        Волшебник 05.01.25✎ 17:06 | 
        (52) А много там разных баз? Нельзя ли их просто удалить?     | |||
| 54
    
        Иван Петров 05.01.25✎ 20:48 | 
        (53) ПробЫвал. К утру из ВаскИр-ов восстанавливают.     | |||
| 55
    
        Волшебник 05.01.25✎ 20:51 | 
        (54) хе-хе     | |||
| 56
    
        Волшебник 05.01.25✎ 20:55 | 
        Враньё! Сплошное враньё!     | |||
| 57
    
        Волшебник 05.01.25✎ 21:58 | 
        У меня тут функция — хранитель знаний, генераторов и накопителей этих знаний. Справляюсь плохо, но что-то умею...
 Например, умею выявлять идиотов и фейки! | |||
| 58
    
        Иван Петров 05.01.25✎ 23:28 | 
        (57) Так понимаю, моя тема идеально подходит по всем критериям.     | |||
| 59
    
        Иван Петров 06.01.25✎ 01:01 | 
        (57) Божечки-кошечки...
 У меня ощущение что за окном год так 2003-й и я на Т1С переписываюсь с Геннадием во время его запоя. "Бухгалтерёнки", "кровь пошла" и вот это вот всё. В полном недоумении посмотрел на подсветку своего ника, стрелочку на теме, твои загадочные сообщения в этой теме... Ты если мысль какую-то донести хотел — достаточно было написать прямым текстом. Если это была попытка меня оскорбить... Ну что тебе сказать... Я помню как ты Короче. Н — недоумение. В январе 2038-го загляну сюда ещё раз. Почитаю как в 7.7 точку актуальности на 20 января установить. | |||
| 60
    
        Волшебник 06.01.25✎ 03:27 | 
        (59) Я твою ветку разбанил и дал тебе последнее слово.
 Кроме этого сообщения. Пиши что хочешь | |||
| 61
    
        Волшебник 06.01.25✎ 03:29 | 
        Прикиньте, какой чувак к нам залетел... Который помнил!     | |||
| 62
    
        Волшебник 06.01.25✎ 03:29 | 
        Я вот думаю, что все атаки ddos организовал тоже ты...     | |||
| 63
    
        Волшебник 06.01.25✎ 03:31 | 
        Ну а хуйли ты новые ники создаёшь? Иван Петров... Глупость...     | |||
| 64
    
        2mugik 06.01.25✎ 06:06 | 
        (59)Ну ради справедливости надо сказать что он брался на сколько помню отвечать на любые вопросы по 8-ке в ходе переманивания или как это назвать.     | |||
| 65
    
        Злоп 06.01.25✎ 10:26 | 
        Ну дык на Т1С модеры зверствовали.
 Все повторяется ;-) | |||
| 66
    
        Волшебник 06.01.25✎ 17:35 | 
        (64) Это был такой маркетологический приём ради переманивания.
 Да, я убил "Территорию 1С". И горжусь этим. У 1С-ников должен быть собственный форум, а не какой-то раздел кубани... И движок у нас прекрасный, новый. | |||
| 67
    
        Злоп 06.01.25✎ 20:14 | 
        (67) кстати да, переход на новый движок прошел очень гладко. Для меня что старый движок, что сейчас - как бы одно. Программерам - зачет.     | |||
| 68
    
        Волшебник 06.01.25✎ 22:43 | 
        (67) сами с собой\...     | |||
| 69
    
        Волшебник 06.01.25✎ 22:44 | 
        Никакого Злопа нет. Это ник угнанный нейронкой.
 Просто проверьте. Сделайте бригаду, как я прошу. | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |