Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TFileStream + IdHTTP1->Get + TProgressBar 
V
    Опции темы
Alca
Дата 14.10.2009, 00:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 25
Всего: 50



Скачиваю файл:
Код

std::auto_ptr<TFileStream> apfsOutFile(new TFileStream(_T("_____.rar"), fmCreate));
IdHTTP1->Get(sRealLink, apfsOutFile.get());

Необходимо реализовать индикацию загрузки, т.е. этот код прикрутить к прогресбару.

Добавлено через 12 минут и 27 секунд
Я сделал так:
Код

//--------------------------------------------------------------------------- 
void __fastcall TForm1::IdHTTP1Work(TObject *Sender, TWorkMode AWorkMode, const int AWorkCount) {
    ProgressBar1->Position=AWorkCount;
    Application->ProcessMessages();
} 
//--------------------------------------------------------------------------- 
void __fastcall TForm1::IdHTTP1WorkBegin(TObject *Sender, TWorkMode AWorkMode, const int AWorkCountMax) {
    ProgressBar1->Max= AWorkCountMax;
}
//--------------------------------------------------------------------------- 
void __fastcall TForm1::IdHTTP1WorkEnd(TObject *Sender, TWorkMode AWorkMode) {
    ProgressBar1->Position=0;
}
//---------------------------------------------------------------------------

Есть ли еще способы?


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 14.10.2009, 07:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(Alca @  14.10.2009,  00:48 Найти цитируемый пост)
Есть ли еще способы? 

на мой взгляд - нет.

Добавлено через 3 минуты и 8 секунд
то бишь идентичного по простоте. 
PM MAIL   Вверх
Alca
Дата 14.10.2009, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 25
Всего: 50



Цитата

то бишь идентичного по простоте. 

Есть какие-то извращения?


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 14.10.2009, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(Alca @  14.10.2009,  09:08 Найти цитируемый пост)
Есть какие-то извращения? 

ага. в фонов режиме - через тот же TTimer считывать apfsOutFile->Position. Размер файла мы знаем, поэтому проблем с прекращением работы таймера быть не должно. Насколько это работоспособно ХЗ. Но если есть желание можно и попробывать.
PM MAIL   Вверх
Alca
Дата 14.10.2009, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 25
Всего: 50



Хотелось бы блоками скачивать файл, а не стримом.


--------------------
PM WWW ICQ Skype Jabber   Вверх
mrbrooks
Дата 14.10.2009, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Цитата(Alca @  14.10.2009,  10:35 Найти цитируемый пост)
Хотелось бы блоками скачивать файл, а не стримом. 

У Indy кажется по другому и нельзя. Хотя надо покурить мануал.

Добавлено через 7 минут и 4 секунды
Кстати как насчет реализовать на WinSocket протокол RFC 1945 or  RFC 2616  smile Собственно любой чих можешь сделать по собственным требованиям  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0477 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.