PDA

Просмотр полной версии : передача через idhttp post


SultanOFF
02.02.2010, 18:51
Здравствуйте. Произвожу передачу файла методом post. Возник вопрос можно ли отследить скока % файла уже передано?(ну или сколько кб передано)

RedFern.89
02.02.2010, 19:07
Попробуй так. я незнаю


idHTTP.Post('http://vk.com/upload.php', Params, Content);

procedure TMainForm.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Integer);
beign
If AWorkMode = wmWrite Then { Действия }
end;

SultanOFF
02.02.2010, 19:38
так это ведь поможет лишь отследить идет ли передача в данный момент, а как узнать сколько байт уже передано?

RedFern.89
02.02.2010, 19:48
так это ведь поможет лишь отследить идет ли передача в данный момент, а как узнать сколько байт уже передано?



procedure TMainForm.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Integer);
beign
If AWorkMode = wmWrite Then { Действия }
end;


а это что?

переменная AWorkCount тебе покажет сколько переданно

SultanOFF
03.02.2010, 17:01
var k:Integer;
procedure HTTPWork(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin
if k<>0 then
Progress.Position := Round(AWorkCount / k * 100) // подсчет процентов %
end;
procedure HTTPWorkBegin(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCountMax: Integer);
begin
if AWorkMode=wmWrite then
k:= AWorkCountMax; // запомнить размер отправляемого
end;

RedFern.89
03.02.2010, 21:24
ааааааа.. тока щас врубился! те расчет процентов надо был только?))

SultanOFF
04.02.2010, 06:14
ну да)