Текущий архив: 2002.12.19;
Скачать: CL | DM;
Вниз
TClientSocket в компоненте Найти похожие ветки
← →
Юрий (2002-10-24 05:31) [0]Привет!
Как получить буфер в компоненте?
Даже точнее - как сделать так чтобы отправлялся буфер и принимался через сокет в одной процедуре в компоненте. У меня он вроде как отправляется, но не принимается. По всей видимости, здесь надо отловить какое-то событие.
Ход мыслей такой:
В програме:
type
TForm1 = class(TForm)
MyComp: TMyComp;
....................
procedure TForm1.button1click(Sender : tobject);
begin
MyComp.ExecQuery;
end;
В компоненте
type
TMyComp = class(TComponent)
S : TClientSocket;
..............................
procedure S.ExecQuery;
begin
.......
S.Port:=...
S.Address:=...
If not S.Active then S.Active:=true;
While not S.Active do Application.ProcessMessages;
S.Socket.SendBuf(Buf,N);
здесь что-то должно быть...
N:=S.Socket.ReceiveLength;
S.Socket.ReceiveBuf(Buf,N);
end;
Спасибо.
← →
Bsl (2002-10-24 07:56) [1]Чтобы все в одной процедуре - надо синхронный connection type, кроме того, нужно создавать отдельный thread для чтения.
Если асинхронный тип, то надо отлавливать событие OnXXXX[Read|Write] - в зависимости от клиента/сервера. Кроме того, нужно включать в передаваемый поток служебныю информацию, т.к. при асинхорнном соединении данные приходят кусками.
← →
Юрий (2002-10-24 09:34) [2]Есть ли какая-нибудь ссылка или код, что бы посмотреть на это?
← →
Юрий (2002-10-24 20:52) [3]Так что,никто не может мне помочь в этом вопросе?
Страницы: 1 вся ветка
Текущий архив: 2002.12.19;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.018 c