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

Вниз

Узнать тип сообщения, присланого TServerSocket   Найти похожие ветки 

 
Death ©   (2007-01-19 18:28) [0]

Клиент (TClientSocket) посылает сообщение TServerSocket. Как узнать тип посланного сообщения (текстовое - SendText или данные-SendBuf)?


 
Dmitrij_K   (2007-01-19 20:57) [1]

Чем "текст" отличается от "данных"?


 
Death ©   (2007-01-20 17:57) [2]


> Dmitrij_K


Текст - это то, что посылается методом SendText.
Данные - может быть структура или массив, посылаемые методом SendBuf


 
Palladin ©   (2007-01-20 18:04) [3]


> [2] Death ©

а прикинь я текст пошлю методом sendbuff, а массив методом sendtext?


 
Dmitrij_K   (2007-01-21 10:30) [4]


> Death ©   (20.01.07 17:57) [2]

Посмотри  на код SendText() (ScktComp.pas)
function .SendText(const s:string): integer;
begin
 Result := SendBuf(Pointer(S)^, Length(S));
end;

Разницу между SendText и SendBuf видишь?
Я нет.


 
Death ©   (2007-01-22 13:48) [5]

Перефразирую вопрос: как узнать что именно послано - просто текстовая строка или некая структура????


 
umbra ©   (2007-01-22 14:22) [6]

если клиент сам не говорит,текст єто или нет, то никак


 
SpellCaster   (2007-01-25 11:31) [7]

> [5] Death ©   (22.01.07 13:48)

Анализом пришедших данных. Проверка на нетекстовые символы.


 
Сергей М. ©   (2007-01-25 14:05) [8]


> SpellCaster   (25.01.07 11:31) [7]


Абсолютно не годится.


 
Дмитрий Белькевич ©   (2007-01-25 16:11) [9]

>Абсолютно не годится.

Да, случаи всякие бывают.

>как узнать что именно послано - просто текстовая строка или некая структура

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


 
Сергей М. ©   (2007-01-25 16:12) [10]


> Дмитрий Белькевич ©   (25.01.07 16:11) [9]


да... уж ..

ПИО - он и в Африке ПИО)


 
tesseract ©   (2007-01-25 21:36) [11]

> [8] Сергей М. ©   (25.01.07 14:05)
>
> > SpellCaster   (25.01.07 11:31) [7]
>
>
> Абсолютно не годится.


Как-то приходилось заниматься - на порт должны приходить бинарные данные, packed record. В одной сети у конкретного заказчика,  что-то вылетало. Ну вываливаеться и всё. Выяснилось, что в ответ на запрос вместо бинарных данных от преобразователя Rs232-TCP, приходила какая-то фигня от какого-то самописного местного сетевого чата. Всегда проверяйте, что вам пришло в ответ !!!


 
SpellCaster   (2007-02-02 13:43) [12]

> Абсолютно не годится.

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


 
grisme ©   (2007-02-02 19:16) [13]

можно например первым байтом слать либо chr(1) либо chr(2). т.е. в зависимости от значения можем узнать )
а вообще это ненужная затея ) зачем?



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

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

Наверх




Память: 0.47 MB
Время: 0.052 c
2-1188628759
Putnik
2007-09-01 10:39
2007.09.30
Проблемы с сообщениями Windows


2-1188917942
delphiForever
2007-09-04 18:59
2007.09.30
быстрая работа с графикой без DirectX и OpenGL


15-1189014249
Layner
2007-09-05 21:44
2007.09.30
Веб статистика от некоторых профи вебмастеров


1-1184669132
yaJohn
2007-07-17 14:45
2007.09.30
клик на пункте меню имеющем подпункты.


15-1186723331
Rouse_
2007-08-10 09:22
2007.09.30
Update 2 to C++Builder 2007 and Delphi 2007 for Win32





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