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

Вниз

Данные по Tcp   Найти похожие ветки 

 
Krann ©   (2002-08-29 16:33) [0]

Уважаемые мастера Опять же не по адресу но всё же посмотрите плз.
Почему то в первом случае Writeln работает правильно а во втором с ошибкой.
procedure TServerForm.TCPServerExecute(AThread: TIdPeerThread);
const
Mass=100;
var
FileName,SRequest: string;
FStream,Kusok: TFileStream;
I,pos :Integer;
begin
with AThread.Connection do
begin
WriteLn("Hello from Indy TCP Stream Server.");
try
SRequest := UpperCase(ReadLn);
if SRequest = "GETTING" then
begin
FStream:=TFileStream.Create("D:\test.log",fmOpenReadWrite);
Kusok := TFileStream.Create("D:\kusok.log",fmCreate or fmShareDenyRead);
//передаем первые 100 байт
OpenWriteBuffer;
Kusok.CopyFrom(FStream,Mass);
WriteStream(Kusok);
CloseWriteBuffer;
Writeln("Qaz");
здесь предается именно "Qaz"
//передаем вторую порцию из 100 байт
OpenWriteBuffer;
Kusok.CopyFrom(FStream,Mass);
WriteStream(Kusok);
CloseWriteBuffer;
// а здесь передается не "End" на самом деле а Kusok + "End"
// тк клиент на Readln возвращает именно Kusok + "End"
Writeln("End");
FStream.Free;
Label1.Caption:= "Файл отправлен";
end;
finally
Disconnect;
end;
end;
end;
end.


 
max2057 ©   (2002-08-29 17:25) [1]

по моему тебе перед посылкой "end" нужно Flush"ить стрим



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

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

Наверх




Память: 0.46 MB
Время: 0.011 c
14-27164
Лана Розанова
2002-08-13 16:55
2002.09.09
Digitman-чик


1-27100
kerrik
2002-08-25 01:21
2002.09.09
Как узнать, когда прилож. (CreateProcess) загрузилось полностью?


14-27195
Igor_thief
2002-08-14 16:03
2002.09.09
DB


1-26994
Yasha
2002-08-29 12:57
2002.09.09
Слайд-шоу


1-27019
SKing
2002-08-30 08:21
2002.09.09
Frame?