K
kyran29
Код выполняется в отдельном потоке.
Подскажите, пожалуйста, как отразить весь процесс закачки файла, с помощью компонентов TProgressBar и TLabel.
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable"> Код здесь</div></div><div class="sp-body"><div class="sp-content">
<table valign="top" style='margin:0;width:100%;border:1px dashed red;'>[tr]<td align='middle' bgcolor='#ff6060' valign='top' width='1%'>
<FONT color='#ffffff' size='+3'> ! </font>
</td><td align="midle" valign='top' style='background:#fff;'>ОФОРМЛЯЙ ПОСТЫ ПО ЧЕЛОВЕЧЕСКИ! Предупреждение. Vital</td>[/tr]</table>
Подскажите, пожалуйста, как отразить весь процесс закачки файла, с помощью компонентов TProgressBar и TLabel.
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable"> Код здесь</div></div><div class="sp-body"><div class="sp-content">
Код:
Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,URLMon;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
TLoadThread = class(TThread)
protected
FResult:String;
procedure Execute; override;
procedure ShowResult;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function DownloadFile(SourceFile, DestFile: string): Boolean;
begin
try
Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil) = 0;
except
Result := False;
end;
end;
procedure TLoadThread.Execute;
const
//// Адресок
SourceFile = 'http://downloads.kaspersky-labs.com/trial/registered/8NGILSWTCHAPVSJ1NTX8/kav9.0.0.736ru.exe ';
// Куда качаем
DestFile = 'c:\kav9.0.0.736ru.exe ';
begin
if DownloadFile(SourceFile, DestFile) then
FResult:='Файл загружен!'
else
FResult:='Ошибка при загрузке - '+ SourceFile;
Synchronize(ShowResult);
end;
procedure TLoadThread.ShowResult;
begin
ShowMessage(FResult);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
lt:TLoadThread;
begin
lt:=TLoadThread.Create(False);
lt.FreeOnTerminate:=True;
lt.Resume;
end;
<table valign="top" style='margin:0;width:100%;border:1px dashed red;'>[tr]<td align='middle' bgcolor='#ff6060' valign='top' width='1%'>
<FONT color='#ffffff' size='+3'> ! </font>
</td><td align="midle" valign='top' style='background:#fff;'>ОФОРМЛЯЙ ПОСТЫ ПО ЧЕЛОВЕЧЕСКИ! Предупреждение. Vital</td>[/tr]</table>