Суть в следующем: качаю текстовой фаил из Инета и хочу отражать процесс скачки ProgressBar'ом,подскажите как правильно?!! Вот кусок,куда я втыкал ProgressBar:
begin
ProgressBAr1.Position:=0;
sAppName := ExtractFileName(Application.ExeName);
hSession := InternetOpen(PChar(sAppName), INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
try
hURL := InternetOpenURL(hSession,PChar(URL),nil,0,0,0);
try
AssignFile(f, FN);
Rewrite(f,1);
repeat
InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen);
BlockWrite(f, Buffer, BufferLen); ProgressBAr1.Position:=ProgressBAr1.Position+1;
until BufferLen = 0;
CloseFile(f);
Result:=True;
finally
InternetCloseHandle(hURL)
end
finally
InternetCloseHandle(hSession)
end
end;
ЗАРАНЕЕ СПАСИБО!!!
Re: Подскажите, как правильно прописать ProgressBar?
Здравствуйте, AlexandrN, Вы писали:
AN>Попробуй вставить перед until, Application->ProcessMessage(); AN>Должно помочь, если ProgressBar? замерает на одном месте до конца скачивания...
Не помогло...ProgressBar закрашивается,только когда фаил уже скачался, а самого процесса не кажет
всё равно спасибо!!!
Re[3]: Подскажите, как правильно прописать ProgressBar?
Здравствуйте, Almias, Вы писали:
A>Здравствуйте, AlexandrN, Вы писали:
AN>>А поточнее можно, что невыполняется. AN>>ProgressBar? что ли замерает до конца скачивания?????? A>да,да я подозреваю,что что-то не так делаю...вот кусок кода: A>...
A> sAppName := ExtractFileName(Application.ExeName);
A> hSession := InternetOpen(PChar(sAppName), INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0);
A> try
A> hURL := InternetOpenURL(hSession,PChar(URL),nil,0,0,0);
A> try
A> AssignFile(f, FN);
A> Rewrite(f,1);
A> repeat
A> :???: ProgressBAr1.Position:=ProgressBAr1.Position+1;
A> InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen);
A> BlockWrite(f, Buffer, BufferLen);
ProgressBar1.Update;
Update;
A> until BufferLen = 0;
A>...
... << RSDN@Home 1.0 beta 2 РУЛИТ!!! >>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))