Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Socket ы. Передача строк. [D4, Win95/98]


Страницы:   1 2

Fredericco ©   (2003-01-10 11:42:00) 

Привет уважаемые мастера!
Сложилась вот такая вот ситуация:
клиентом передаю данные в цикле 100 раз строку из 3351 символов:

s:=StringOfChar("T",3344);
DelMe:=0;
for i:=1 to 100 do begin
SendTextToServ(s);
Application.ProcessMessages;
// Sleep(50);
end;

..........
const
sCut:string="<-~!~->";
..........
procedure TForm1.SendTextToServ(Text:String);
begin
csDrv.Socket.SendText(Text+sCut);
Memo1.Lines.Add(IntToStr(Length(Text+sCut)));
DelMe:=DelMe+Length(Text+sCut);
Caption:=IntToStr(DelMe);
end;



принимаю так:

procedure TForm1.ssDrvClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
sh,sp:integer;
s:string;
begin
sh:=Socket.SocketHandle;
s:=Socket.ReceiveText;
sp:=Socket.LocalPort;
Memo2.Lines.Add(IntToStr(Length(s)));
DelMe:=DelMe+Length(s);
Label6.Caption:=IntToStr(DelMe);
end;



Если клиент отправляет с задержкой в 50 мс, то все правильно 335100 отправлено и ровно столько же получено, а если задержку убрать, то отправляется правильно, а принимается всегда по-разному, но в пределах от 30000 до 55000! При единичных небольших отправках все - ок, если отправляю сразу строку из 335100 символов - тоже все ок.
Не поможите ли мне в сложившейся ситуации?

Заранее благодарен
с уважением
Fredericco.


Fredericco   (2003-01-10 12:15:00) [21]

2 F1 © (10.01.03 11:53)
Спасибо, но я не очень понимаю как мне использовать OnWrite.
Не мог бы ты мне поподробнее рассказать, если не трудно, или ссылочку кинуть, гду поискать?


F1   (2003-01-10 11:53:00) [22]

А кто будет анализировать результат sendtext???
Он вель может не все послать, если буфер забит до отказа!!!
Посмотри событие OnWrite...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо