Главная страница
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.027 c
8-1130610340
Volf_555
2005-10-29 22:25
2006.04.02
Как разрезать рисунок?


3-1139407817
$Инъектор
2006-02-08 17:10
2006.04.02
Проблемы с русским - Absolute database


2-1142942855
Scavenger
2006-03-21 15:07
2006.04.02
Ping ПК


15-1142092469
cyborg
2006-03-11 18:54
2006.04.02
Купил сегодня системник


15-1141829808
Dimedrol
2006-03-08 17:56
2006.04.02
На кухне вытяжка и 2 оголенных провода...