Форум: "Сети";
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];
ВнизСобытие ClientSocketRead Найти похожие ветки
← →
SemFLY (2002-01-22 19:21) [2]Digitman Вот вся оба оба искходника клиент и сервер посмотри может я тут ошибаюсь где-то
Сервер ( посылает )
begin
try
DataFile := TFileStream.Create(FuncParam,fmOpenRead);
Size := DataFile.Size;
ServerSocket1.Socket.Connections[0].SendText("01");
ServerSocket1.Socket.Connections[0].SendBuf(Size,4);
ServerSocket1.Socket.Connections[0].SendStream(DataFile);
except
DataFile.Free;
end;
end;
- - -
Клиент ( принимает )
procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
var
Count, ReceiveSize : Cardinal;
Buffer : Array [0..8191] of byte;
command, FuncParam : String;
cn, I, SizeStream : Integer;
DataFile : TMemoryStream;
begin
command := Socket.ReceiveText; |
cn := StrToInt(Copy(command,1,2)); | - тут фильтраци префикса(работает 100%)
FuncParam := Copy(command,3,I); |
case cn of
01 : begin
SizeStream := Socket.ReceiveBuf(ReceiveSize,4);
Count := Socket.ReceiveLength;
Socket.ReceiveBuf(Buffer,Count);
DataFile:= TMemoryStream.Create;
DataFile.Size := SizeStream;
DataFile.Seek(0,SoFromEnd);
DataFile.WriteBuffer(Buffer,Count);
DataFile.Seek(0,SOFromBeginning);
Form2.Memo1.Lines.LoadFromStream(DataFile);
DataFile.Clear;
end;
end;
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.04.04;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c