Докачка файлов по сети (NetBios)Delphi , Интернет и Сети , Файлы и ИнтернетДокачка файлов по сети (NetBios)Автор: http://forum.vingrad.ru Мне вот все интересно было...думал проги, которые файлы по сети докачивают как-то хитро с нетбиосом работают...И вот решил попробовать написать нечто подобное...Токо похоже все они ( проги ) про нетбиос и слыхом не слыхивали...нашел простейшее решение этой проблемы... Код некрасивый, потому как писал чисто для проверки...более того, тут надо переписать его весь, но общий смысл должен быть понятен...я разочарован :(( procedure TForm1.Button1Click(Sender: TObject); var Stream, Stream1: TFileStream; Temp: array[0..$FFFF] of Byte; Access: Integer; FileNames, Filenames1: string; begin with TOpenDialog.Create(Form1) do begin Execute; FileNames := FileName; Free; end; if Filenames = '' then Exit; with TSaveDialog.Create(Form1) do begin Execute; FileNames1 := FileName; Free; end; if Filenames1 = '' then Exit; Access := fmOpenReadWrite; ZeroMemory(@Temp, sizeof(Temp)); Stream := TFileStream.Create(FileNames, fmOpenRead); if not FileExists(Filenames1) then Access := fmCreate; Stream1 := TFileStream.Create(Filenames1, Access); Gauge1.MaxValue := Stream.Size; Stream.Position := Stream1.Size; Stream1.Position := Stream1.Size; Label1.Caption := IntToStr(Stream1.Position); Label2.Caption := IntToStr(Stream.Size); Gauge1.Progress := Stream.Position; while Stream.Size <> Stream1.Size do begin if (Stream.Size - Stream1.Position) < sizeof(Temp) then begin Stream1.CopyFrom(Stream, Stream.Size - Stream1.Position); end else Stream1.CopyFrom(Stream, sizeof(Temp)); Gauge1.Progress := Stream.Position; Label1.Caption := IntToStr(Stream.Position); Label2.Caption := IntToStr(Stream.Size); Form1.Update; Application.ProcessMessages; end; Stream.Free; Stream1.Free; end; В статье описывается создание программы на Delphi, которая использует NetBios для передачи файлов по сети и обеспечивает документирование процесса копирования файла. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Файлы и Интернет ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |