Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Вниз

ClientSocket & ServerSocket   Найти похожие ветки 

 
hfa ©   (2004-01-09 14:28) [0]

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


 
Fredericco ©   (2004-01-09 15:13) [1]

Придумываешь свой протокол предачи данных, например:
Вася хочет послать мессагу Пете, мессага красного цвета:
Пакет длинною
Байты:
1 - #2 Стартовый байт
2 - Признак пакета (мессага, картинка, служебная инфа и т.д.)
3..4 - ID отправителя (0..65536)
5..6 - цвет и стиль отправителя (256 цветов, 256 стилей)
7..8 - ID получателя (0..65536)
9..10 - цвет и стиль получателя (256 цветов, 256 стилей)
11..14 - запасные байты, вдруг зачем пригодятся ...
15..N - тело пакета
N+1 - #3 Стоповый байт
Цвет, стиль и даже картинки в тексте лучше прописывать в теле пакета с помощью тегов. Пример строки с тегами для стиля, цвета и картинки:
<font color=255 type=Comic Sans MS>Привет <Ж>Вася!</Ж><img pos=74 len=12>Это позиция в строке номер 74, тут идут данные самой картинки, длинной 78 байт


 
Rouse_ ©   (2004-01-10 22:15) [2]

> [1] Fredericco ©   (09.01.04 15:13)
Федь, не экономично, соишком много избыточной информации...

Мое предложение таково:
Картинка отсылается один раз за сессию - при входе пользователя в чат, цвет и стиль тоже при входе...
Если картинка или стиль - цвет изменились - повторная отправка...

Следовательно снимаем лишнюю нагрузку с сети (хотя если для локалки - то это не сильно скажется)

Да, и в качестве разделителя я обычно использую #0 (ну т.е. в байтововом эквиваленте) - тогда отпадает необходимость структурировать пакеты


 
iWorm ©   (2004-01-12 05:20) [3]

hfa  в продолжении мысли Rouse_
а еще лучше завести БД на сервере:)

кстати я такую программу тоже счас пижу, но вот с БД у мня некоторый ступор щас, поэтому передаю инфу примерно по способу Fredericco толька структура другая.



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.033 c
1-1078405307
Demon_mhm
2004-03-04 16:01
2004.03.28
Конструктор класса, запуск с параметрами и без


9-1062317384
booblik
2003-08-31 12:09
2004.03.28
фатал еррор


1-1078894491
Ann_
2004-03-10 07:54
2004.03.28
Поток


1-1078486241
Курдль
2004-03-05 14:30
2004.03.28
Создать TBitmap "с нуля" в электронном виде.


7-1073404388
Cure
2004-01-06 18:53
2004.03.28
Автозагрузка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский