Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.02.2009, 18:26   #1
mar4elo
Форумчанин
 
Регистрация: 17.04.2008
Сообщений: 146
По умолчанию Склеивание пакетов TClientSocket

Как избежать склеивание пакетов при передаче данных.
У меня отправляется один пакет а за ним сразу следующий...приходят склеиные Если можно то пример..
mar4elo вне форума Ответить с цитированием
Старый 18.02.2009, 19:38   #2
Garacio_cain
Пользователь
 
Аватар для Garacio_cain
 
Регистрация: 05.01.2008
Сообщений: 85
По умолчанию

после каждого пакета в троку добавь какой нибудь символ или строку символов например '#~!%$'
Код:
paket:string;
~~~~~~~~~~~
Paket:=paket+'#~!%$'
При приеме данных занеси их в отдельную переменную а затем посмотри в цикле всю строку. как только находишь это ->'#~!%$' то копируй это в дополнительную переменную. Это и будет пакетом.
пример
Код:
for i:=1 to length(paket)-5 do
  begin
    if copy(paket,i,5)='#~!%$' then
      begin
        k:=copy(paket,i,m-i);
        m:=i;
      end;
  end;
Где m переменная, в которой будет храниться номер символа окончания последнего разбитого пакета.
Garacio_cain вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Склеивание звуков varvara16 Мультимедиа в Delphi 24 14.11.2008 18:24
Склеивание массивов в паскале. TheKnyazz Паскаль, Turbo Pascal, PascalABC.NET 4 04.11.2008 13:09
склеивание форм blackstersl Общие вопросы Delphi 1 29.10.2008 19:16
Склеивание изображений Geracle Мультимедиа в Delphi 10 01.10.2008 16:45
обновление в блоге - СКЛЕИВАНИЕ ФАЙЛОВ Pblog Обсуждение статей 0 07.08.2007 12:41