![]() |
|
#1
|
||||
|
||||
![]() Работаю с сокетами, возник вопрос - как отследить скачку файла? Т.е. отправляю файл с клиента на сервер, как мне проследить сколько байт файла уже скачалось? Файл передаю примитивно:
Код:
Socket.SendStream(TFileStream.Create('123.txt', fmOpenRead or fmShareDenyWrite)); Код:
private FStream: TFileStream; -//-//- procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); var iLen: Integer; Bfr: Pointer; begin iLen := Socket.ReceiveLength; GetMem(Bfr, iLen); try Socket.ReceiveBuf(Bfr^, iLen); FStream.Write(Bfr^, iLen); finally FreeMem(Bfr); end; end; procedure TForm1.ClientSocket1Connect(Sender: TObject; Socket: TCustomWinSocket); begin FStream := TFileStream.Create('1.txt', fmCreate or fmShareDenyWrite); end; Как мне вывести процесс передачи например в progressbar? Алкоголик-аморал, явная угроза обществу Блин, я уже местный, а все равно нифига не знаю... |