Drawer - создание VB-модуля с Вашей векторной подписью

Обсуждение проектов наших жителей.
Вы можете выставить проект на тест или найти помощников для его реализации.

Модератор: BV

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Drawer - создание VB-модуля с Вашей векторной подписью

Сообщение VKS » 30.11.2006 (Чт) 15:45

http://vksoft.mtu-saturn.ru/files/Drawer.rar

Данная программа предназначена для "извращенцев"-программистов VisualBasic, к примеру для меня =)).

При помощи неё можно быстро создать VB-модуль вашей векторной подписи, рисунка, текста.. чего угодно.
Может пригодится комуто.

P.S. Используйте Shift для "проекции" вектора.

Реализовано:
опция пропуска каждого N-го вектора
резервное копирование
печать на принтер
опция прозрачности формы (можно рисовать поверх какогото рисунка)
масштабирование
опция проверки/загрузки последней версии программы
возможность вставки векторного текста


Программа и инсталятор не создают ключи в реестре Windows. Для деинсталяции удалите ярлык на неё и папку \Program Files\Drawer В exe-файле находится векторная таблица ASCII
Последний раз редактировалось VKS 30.11.2006 (Чт) 20:02, всего редактировалось 2 раз(а).

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 30.11.2006 (Чт) 15:48

Раз.
И сразу же два, за особый цинизм при создании топика.
Изображение

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 30.11.2006 (Чт) 18:16

Если юзер с одной мессагой постит файл - это вирус
[Место cдаётся]

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 30.11.2006 (Чт) 18:31

Ну а если юзер начал постить с этой первой месаги - то значит у него все вирусы?

Мож отправить в лабораторию касперского или ещё кудато для анализа=)

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 30.11.2006 (Чт) 18:38

tyomitch
Раз и два - это предупреждения?

Ну если так - то пожалуйста забаньте меня и удалите этот топик

Всем спасибо!

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 30.11.2006 (Чт) 19:01

VKS
1. Использование самопальных инсталляторов, да ещё и такого качества - дурной тон
2. После того как инсталлер с полминуты "подумал", мне высветилось сие окошко, я установил предложенную софтину и запустил оную. После чего любовался сообщением File not found.
Изображение

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 30.11.2006 (Чт) 19:22

Аналогично. А еще я отказался создавать ярлыки, а он все равно создал. И раз уж сделал инсталлятор, то где деинсталлятор?

Короче, инсталлятор фтопку. :evil:
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 30.11.2006 (Чт) 19:24

keks-n

2) Действительно очень любопытный факт.. Минимум на 5 компьютерах запускал прогу - не было такого. А можно посмотреть к примеру в ntfilemon на какой файл ругается? Да и то что инсталятор долго тоже оч странно - он чрезвычайно простой


Нашёл ошибку - огромное спасибо - действительно - первый запуск .. все дела. ша исправим

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 30.11.2006 (Чт) 19:42

исправил - file not found больше не будет

Здесь без инсталятора
Последний раз редактировалось VKS 08.12.2006 (Пт) 0:40, всего редактировалось 1 раз.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 01.12.2006 (Пт) 0:07

Antonariy писал(а):Аналогично. А еще я отказался создавать ярлыки, а он все равно создал. И раз уж сделал инсталлятор, то где деинсталлятор?

Короче, инсталлятор фтопку. :evil:


ярлыки.. а кто сказал что это инсталятор создал? Инсталятор этот для меня тем хорош что он прост, универсален и дистрибутив создаётся чрезвычайно быстро. Главное что вреда системе он не несёт и как для меня то это лучше, чем когда инсталятор весит больше чем устанавливаемая программа.. ну да - согласен - уродский :-) зато хоть с компрессией =)))

ну а по поводу деинсталятора я писал в первом посте
ну повторюсь:
Программа и инсталятор не создают ключи в реестре Windows. Для деинсталяции удалите ярлык на неё и папку \Program Files\Drawer

Да и вообще ненужно его обсуждать я и так знаю что это Г и неидёт в сравнение с другими и всё такое.. поэтому и пишу инсталлятор с одной л. =)

З.Ы. а ярлыки всёравно будут создаваться.. но не инсталятором. ну вот так сложилось.

2 keks-n - ещё раз огромное спасибо за информацию о ошибке

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 01.12.2006 (Пт) 6:11

VKS, ты, наверно, не постиг всей ценности кнопки Изображение

Объясняю: если после отправки сообщения тебя вдруг осенило, не надо постить следующие, достаточно отредактировать последнее.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 01.12.2006 (Пт) 11:46

Прикольная прога, но есть несколько минусов.
З.Ы. а ярлыки всёравно будут создаваться.. но не инсталятором. ну вот так сложилось.
Нафига мне на рабочем столе лишняя иконка, появляющаяся при каждом запуске, да еще такая уродливая?

Окно FixedToolWindow конечно круть, но работать с ним не удобно, свернуть нельзя. Лучше сделать просто Sizable.

Функция c_mod сделана как будто специально против всех правил vb-кодинга, направленных на повышение производительности. Я понимаю, что подпись не должна появляться мгновенно, но для этого достаточно парочки Sleep + DoEvents.

Во-первых есть более продвинутые способы преобразования hex-строки в байтовый массив, чем посимвольный перебор. Во-вторых зачем каждый раз в цикле проверять заголовок строки, если это можно сделать перед циклом? В-третьих совершенно не обоснованно выбран тип в Dim t(3) As Variant и c_mod(i_data). Работа с переменными типа Variant идет через вызов функций msvbvm, а не напрямую, что самым негативным образом сказывается на циклах, в которых они участвуют. Так что пользоваться Varian'ом нужно только если без него никак, а здесь смысла ни малейшего - даже Line принимает в качестве параметров Integer. В-четвертых, что следует из третьих, - абсурдное деление на единицу. В-пятых, если уж перебираем посимвольно hex, почему по два символа, а потом обратно склеиваем в восемь символов??? Не проще ли сразу по 8? Ну и в-шестых совсем мелочь... If f = True Then f = Not f... Почему не Then f = False? Ведь присваивание значения быстрее, чем логическая операция + присваивание значения. Хотя возможно компилятор сделает из этого одну-единственную логическую операцию и тогда это будет быстрее.

А в функции всего 25 строчек.

Конечно в свете решаемой задачи все это не имеет ни малейшего значения, но нужно приучить себя писать правильный код всегда, чтобы в том случае, когда скорость программы ставится во главу угла, не пришлось решать проблемы там, где их возникнуть не должно в принципе.

И еще, что такое GetLastVer.dll? Зачем ему проставлены атрибуты скрытый и системный?
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 01.12.2006 (Пт) 13:14

BV

учту


Antonariy
>>свернуть нельзя
Ctrl+M

>>Во-первых есть более продвинутые способы преобразования hex-строки в байтовый массив, чем посимвольный перебор.

а есть возможность сказать по подробнее?

>>Во-вторых зачем каждый раз в цикле проверять заголовок строки, если это можно сделать перед циклом......если уж перебираем посимвольно hex, почему по два символа, а потом обратно склеиваем в восемь символов??? Не проще ли сразу по 8

дело в разделителе (так называемом не хексном "GG"). разделитель может быть где угодно в строке. т.е. его ищу постоянно в масиве. Можно конечно и по 8 байт читать и без перебора но тогда придётся искать при поможи inStr

c_mod модуль я привёт в качестве примера и там вроде как и реализовано только на Sleep + DoEvents..

Ну в принципе этот модуль не является критическим по выполнению времени. Но ещё раз поврорюсь - это как пример. Просто когда его делал ничего другого в тот момент в голову не пришло. Спасибо за рекомендации. Постаряюсь поправить

>>Variant идет через вызов функций msvbvm
гм.. этого я не знал - учту


>>И еще, что такое GetLastVer.dll

на самом деле это не dll а exe. Что она делает понятно из её названия. Никаких троянов и того подобного в ней нет (писал я - ручаюсь)
а +r +s +h ставлю для того чтобы при открытии папки (Ctrl+O) не маячили подобные файлы.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 01.12.2006 (Пт) 13:46

>>свернуть нельзя
Ctrl+M
Большинство людей привыкли это делать мышкой.
дело в разделителе (так называемом не хексном "GG"). разделитель может быть где угодно в строке. т.е. его ищу постоянно в масиве. Можно конечно и по 8 байт читать и без перебора но тогда придётся искать при поможи inStr
Во-первых InStr все равно быстрее, чем перебор, а во-вторых для этого есть функция Split.
>>Во-первых есть более продвинутые способы преобразования hex-строки в байтовый массив, чем посимвольный перебор.

а есть возможность сказать по подробнее?
Я пользуюсь ADODB + XML, но они хороши для большого количества хекса. Воспользуйся поиском по форуму, где-то был еще способ.
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 01.12.2006 (Пт) 16:21

>>Я пользуюсь ADODB + XML, но они хороши для большого количества хекса. Воспользуйся поиском по форуму, где-то был еще способ.

я понял. можно придумать много ещё подобных способов в плоть до того, что написать библиотеку на асме (типа для скорости) но а стоит ли это делать для такой маленькой и простой программы как эта. Тем более абсолютно НЕ критична к времени выполнения - наоборот sleep всё "компенсирует" =)) притом придётся всегда тянуть лишние библиотеки для хекса. да и объём там не большой - блок весит <1кб

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 01.12.2006 (Пт) 22:04

В связи со всем вышесказанным, советую пересмотреть код самой проги :wink:

И убрать-таки самовольное создание линка.
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 01.12.2006 (Пт) 22:52

Antonariy
А всё остальное на 5 балов? =)))

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 02.12.2006 (Сб) 11:21

Ну еще мне все-таки не нравится стиль окна.
Остальное более пристально посмотрю когда уберешь создание линка - раздражает, ей богу.
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 04.12.2006 (Пн) 20:01

Добавлено:
экспорт в GIF файл
режим Brush


и коечего поправлено
Последний раз редактировалось VKS 08.12.2006 (Пт) 0:38, всего редактировалось 1 раз.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 05.12.2006 (Вт) 19:39

Ну как? Лучше? =)

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 05.12.2006 (Вт) 19:53

Получше. Но ресайзинг лучше вообще убрать - всё равно масштабирования нет. Соответственно установить MaxButton=False
Изображение

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 05.12.2006 (Вт) 21:58

keks-n

>>Получше. Но ресайзинг лучше вообще убрать - всё равно масштабирования нет. Соответственно установить MaxButton=False

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

то ресайзинг нужен то не нужен - ребята -- ну определитесь

тут господин Antonariy посал:
>>Окно FixedToolWindow конечно круть, но работать с ним не удобно, свернуть нельзя. Лучше сделать просто Sizable. Ну еще мне все-таки не нравится стиль окна.

ну сделал я как просили. шас убрать?

Простите - а какое вы масштабирование ждёте?

Да и чем мешает MaxButton??? тем что он есть? и это всё????? А если бы MaxButton небыло...дайте подумать...А! Я ЖЕ ВОДКИ ВЫПИЛ!!..вы бы сказали что эта прога Г без MaxButton. =)) или это мания MaxButton? хи хи. клас. Жду жесточайшую критику!!! экслер жив =)

ой.. скоро новы год .. Ё.....
Последний раз редактировалось VKS 05.12.2006 (Вт) 23:25, всего редактировалось 1 раз.

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 05.12.2006 (Вт) 22:06

Короче. Окно - Fixed Single. MinButton=True. MaxButton=False.

А при изменении размера, должна масштабироваться соответственно и картинка, что есть лишний геморрой.
Изображение

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 05.12.2006 (Вт) 22:37

keks-n писал(а):Короче. Окно - Fixed Single. MinButton=True. MaxButton=False.

А при изменении размера, должна масштабироваться соответственно и картинка, что есть лишний геморрой.


гы. .. нет не просто гы а настоящее ГЫ

что такое Fixed Single и MinButton я прекрасно зна- не первый год женат. ты не понял саму концепцию сего(http://slovari.yandex.ru/art.xml?art=da ... %26isu%3D2)

а я кстати не имею геморроя и не стремлясь к этому.. это как З.Ы.
и никто не говорил что это аналог CoralDraw =)) прости меня Господи..
и совсем кстати - оно сосвсем и не должно (гы вовсяком случае по моей задумке) быть "должна масштабироваться соответственно и картинка".. совсем не должна. Ну честное слово.. ну совсем честное. А кто сказал что должно быть иначе.

Кстати ну сосвсем последнее - ракеты она запускать откажется на отрез - я мух боюсь.... вот ёмаё -- боюсь и всё

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 05.12.2006 (Вт) 22:56

keks-n
>>После того как инсталлер с полминуты "подумал", мне высветилось сие окошко, я установил предложенную софтину и запустил оную.

давно хотел спросить что у Вас за PC.. не 486? кстати я оч большой поклонник решений тех времён

к сожалению я сейчас работаю на двухядерном 4GHz.. и не могу в принципе сейчас оценить (вспомнить) всю прелесть ностальгии... но к примеру скажу что у меня ещё и остался один из оч древних компов - 550MHz PIII (супер комп - на нём освоил асм16/32 (хотя на асм32 написал тока одну прогу)) (где же мой ZX80...IM2.....эх =)) так вот, отвлёкся я малость, и на нём запускается этот ПРОСТЕЙШИЙ setup с пол толчка - неверите -- ДИСАССЕМБЛИРУЙТЕ! и увидите что там нет ничего лишнего.. З.Ы. ну это если совсем не верите - иначе ...

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 06.12.2006 (Ср) 10:55

Действительно, можно сделать форму FixedSingle только не на весь экран, кому нужна подпись такого размера, а, к примеру, в половину высоты и ширины экрана.

Сохранять в гиф стоит только саму подпись с небольшими полями, а не весь экран с подписью в углу. Да и в принципе вообще это сохранение не нужно. Зачем отбираь работу у пейнта?

Нужно добавить опцию рисовать подпись сразу, без задержек цикла, а то некоторые сложные линии рисует очень медленно, например в стандартном примере insert text с датой. Мои каляки-маляки рисует быстро :)

Еще стоит добавить превью в отдельном диалоге.

Отрисовка результата работы кистью поточечно - изврат. Логичней рисовать за ней невидимую линию, переводтить ее в векторы как обычно, а отрисовывать по ним точно так же кистью.

Вместо хекс-строки, требующей конвертации, или километровых простыней кода, заполняющих массивы, можно создавать файл ресурсов.
и никто не говорил что это аналог CoralDraw =)) прости меня Господи..
и совсем кстати - оно сосвсем и не должно (гы вовсяком случае по моей задумке) быть "должна масштабироваться соответственно и картинка".. совсем не должна. Ну честное слово.. ну совсем честное. А кто сказал что должно быть иначе.
Вместе с формой по-любому не должна.)) Однако по-любому должна без формы. Далеко не у всех есть планшеты, а нарисовать от руки мышкой что-то более-менее ровненькое можно только в большом масштабе. Возможность это уменьшить просто напрашивается. Ты же переводишь растр в линии, а пересчитать их координаты, например уменьшить вдвое, не представляет сложности.

Вторая напрашивающаяся опция - перетаскивание выделенной области. Тут уж проще с растром. Кстати, масштабировать тоже в идеале лучше мышкой.
Лучший способ понять что-то самому — объяснить это другому.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 06.12.2006 (Ср) 11:49

ЗЫ: Не побрезгуй нормальной иконкой...
У вас нет доступа для просмотра вложений в этом сообщении.
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 06.12.2006 (Ср) 11:59

>>Сохранять в гиф стоит только саму подпись с небольшими полями, а не весь экран с подписью в углу
при сохранении в гиф размеру картинки задаются от размеров окна - помоему так опримально, как пользователь захочет так и сохранит

>>Сохранять в гиф стоит только саму подпись с небольшими полями, а не весь экран с подписью в углу. Да и в принципе вообще это сохранение не нужно. Зачем отбираь работу у пейнта?

никто у пэйнта работу и непытался отобрать. Это абсолютно две разные программы и только издалека похожи чемто. А нужно.. ну чтобы было - функция полезная. Пусть будет

>>Еще стоит добавить превью в отдельном диалоге.

зачем?

>>Отрисовка результата работы кистью поточечно - изврат. Логичней рисовать за ней невидимую линию, переводтить ее в векторы как обычно, а отрисовывать по ним точно так же кистью.

это речь идёт о Brush? Не совсем понял я что имелось ввиду

>>Вместо хекс-строки, требующей конвертации, или километровых простыней кода, заполняющих массивы, можно создавать файл ресурсов.

я изначально думал над этим.. но... передумал. Тянуть лишние файлы.. а если пользователь не хочет чтобы это было в файле для общего доступа. Во всяком случае из VB скинуть в файл проще чем нарезать обратно

>>Ты же переводишь растр в линии, а пересчитать их координаты, например уменьшить вдвое, не представляет сложности

я не перевожу растр в линии

>>Вторая напрашивающаяся опция - перетаскивание выделенной области

Полезная опция - согласен. Когда пойму как сделать - обязательно сделаю. Пока здесь не всё так просто.

Спасибо за рекомендации!
Последний раз редактировалось VKS 06.12.2006 (Ср) 13:23, всего редактировалось 1 раз.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 06.12.2006 (Ср) 12:01

Antonariy писал(а):ЗЫ: Не побрезгуй нормальной иконкой...


О! Супер. А то ту сам рисовал - ессно уродская получилась. Спасибо

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 06.12.2006 (Ср) 14:24

>>Еще стоит добавить превью в отдельном диалоге.

зачем?
Чтобы не делать кучу действий с целью заценки результата - экспорт в вб, добавление формы и т.д.
это речь идёт о Brush? Не совсем понял я что имелось ввиду
Имелось ввиду то, что каждая точка рисуется отдельно, что получается очень медленно.
Тянуть лишние файлы.. а если пользователь не хочет чтобы это было в файле для общего доступа. Во всяком случае из VB скинуть в файл проще чем нарезать обратно
Тут уже я не понял...
я не перевожу растр в линии
А что ты делаешь?
Лучший способ понять что-то самому — объяснить это другому.

След.

Вернуться в Наши проекты

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 7

    TopList