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

Вниз

Отправка пакетов   Найти похожие ветки 

 
Son!K   (2003-08-29 16:39) [0]

Добрый день уважаемые.

У меня пишеться прога которая работает через сокеты с клиентом и надо посылать разные записи (запросы о состояни, сообщения и т.д.) все они имеют разную структуру и размер. Можно ли посылать данные о том какую запись надо принять в одном пакете с этой записью?

Или вообще как лучше сделать в такой ситуации?

Зарание благодарен.


 
Vlad Oshin   (2003-08-29 17:40) [1]

причем тут пакеты...
посылай текстом, преамбулу оговаривай


 
Polevi   (2003-08-29 18:34) [2]

попробую еще разок..
описывай свои объекты-запросы, объекты-ответы как классы наследники TComponent, поля опиши как proprty в published секции
TComponent умеет записывать published свойства в поток и создавать свой экземпляр из потока

req:=TRequest.Create; //создали объект-запрос
ms:=TMemoryStream.Create; //создали поток
ms.WriteComponent(req); //записали published свойства в поток

прикрепили к потоку заголовок=ms.Size

отправили поток - socket.SendStream к примеру

получили заголовок, приняли данные размером указаным в заголовке
поместили данные в MemoryStream

req:=ms.ReadComponent(nil); //создали объект из потока

все. имеем на сервере точную копию объекта-запроса, посланного клиентом



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

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

Наверх





Память: 0.45 MB
Время: 0.011 c
8-74332
Ilg
2003-06-21 17:08
2003.10.23
Текстурная заливка


1-74293
Wadim
2003-10-12 18:26
2003.10.23
IExplorer


1-74133
oens
2003-10-11 00:28
2003.10.23
Прокрутка в WebBrowser


14-74401
Murad
2003-10-03 10:48
2003.10.23
Женские


7-74509
DeadMeat
2003-08-01 17:02
2003.10.23
Клава и WH_KEYBOARD_LL





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский