Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.02;
Скачать: CL | DM;

Вниз

Правильное использование WriteBuffer/ReadBuffer в IndyTCPClient   Найти похожие ветки 

 
BFG9k ©   (2006-03-01 12:20) [0]

Делаю следующим образом:


//соединяюсь с сервером
Procedure Send;
begin
  IdTCPClient1.Connect(5000);
end;
//соединение проходит успешно

//обработчки события IdTCPClient
procedure IdTCPClient1Connected(Sender: TObject);
var Buf:PChar;
    Size1,Size2:integer;
begin
//создаю буфер
 GetMem(Buf,32768);
 FillChar(Buf^,32768,0);

//заполняю его каким-то образом
//инициирую Size1
...

 IdTCPClient1.WriteBuffer(Buf^,Size);
...
//инициирую Size2

 try
   IdTCPClient1.ReadBuffer(Buf^,Size2);
 except
//вылезает исключение ReadTimeOut
end;

 FreeMem(Buf);

 IdTCPClient1.Disconnect;
end;



Сервер работает нормально, в другие приложения данные передает. Может быть я неправильно использую IndyTCPClient ?


 
umbra ©   (2006-03-01 12:29) [1]

так а сервер клиенту посылает что-то при этом? ошибка говорит о том, что данные от сервера не приходят.


 
BFG9k ©   (2006-03-01 16:48) [2]

Спасибо, разобрался. Серверу всякую фигню передавал, вот он и не отвечал.


 
Reindeer Moss Eater ©   (2006-03-01 16:51) [3]

Боже, как все сложно и замысловато....

Procedure Send;
begin
 IdTCPClient1.Connect(5000);
 GetMem(Buf,32768);
 FillChar(Buf^,32768,0);
 //заполняю его каким-то образом
 //инициирую Size1
 ...
IdTCPClient1.WriteBuffer(Buf^,Size);
....
end;

И все!



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

Текущий архив: 2006.04.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
15-1142243603
Lock
2006-03-13 12:53
2006.04.02
Delphi 8 Arhitect, ECO- проекты


2-1142498060
ambr
2006-03-16 11:34
2006.04.02
Копировать файл


2-1142429241
Megabyte
2006-03-15 16:27
2006.04.02
Запрос логина и пароля текущего пользователя БД


15-1142229826
Некто
2006-03-13 09:03
2006.04.02
Полезные физические упражнения


15-1141957486
grisme
2006-03-10 05:24
2006.04.02
Математика