Главная страница
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.016 c
8-27121
Novice 2
2002-05-08 00:20
2002.09.09
Увеличение картинки без существенной потери качества


14-27234
AL2002
2002-08-14 11:31
2002.09.09
Зашёл на торри нет


4-27278
wman
2002-07-08 10:33
2002.09.09
Ограничение процессорного времени


6-27145
SDomsk
2002-07-02 15:04
2002.09.09
Socket-ы


14-27233
AL2002
2002-08-13 00:50
2002.09.09
Задаю вопрос и иду спать