Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
40 / 40 / 6
Регистрация: 28.07.2011
Сообщений: 431
1

IdHTTP прога не ждёт пока файл скачается.

24.02.2012, 16:29. Показов 1152. Ответов 4
Метки нет (Все метки)

Привет всем. Наткнулся на проблему. Делаю так
C++
1
2
3
4
 TFileStream *p=new TFileStream("C:\\WINDOWS\\mg.exe",fmCreate|fmOpenWrite); //FileName - имя файла, куда будет сохранен скачиваемы
      IdHTTP1->Get("http://Сайт тут!!!/mg.exe",p)
      ShowMessage("Done");
      delete p;//Очищаем память
Но программа не ждёт когда файл скачается, а просто идёт дальше. Из за этого скачивается 1/10 файла. В чём дело???
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2012, 16:29
Ответы с готовыми решениями:

Программа ждет, пока не введен текст
Добрый день. Дат ТекстБокс, если нажать на кнопку при пустом боксе должно появиться уведомление...

Не скачается файл через readfile()
Доброго времени суток! У меня не получается скачать большой файл с сервера через ф-цию readfile. ...

Парсер, который ждет пока страница полностью прогрузится
Я новичек, нужна библиотека для парсинга. На странице происходит js код (автоматически), после...

Функция, которая запускает приложение и ждет, пока его не закроют
Как сделать следующее: есть метод (функция), которая запускает какое то приложение, например,...

4
287 / 228 / 27
Регистрация: 13.06.2010
Сообщений: 744
24.02.2012, 17:08 2
Да ну.. У меня в чуть ли не в каждой программе IdHTTP->Get
Программа ждет пока не загрузит полностью..

Загрузится, запускает OnWorkEnd и программа продолжает выполнение следующих операций.
Попробуйте, вывести уведомление в событии OnWorkEnd - Станет ясно, когда загрузка файла завершилась.
0
40 / 40 / 6
Регистрация: 28.07.2011
Сообщений: 431
24.02.2012, 21:37  [ТС] 3
Запускаю OnWorkEnd
C++
1
2
3
4
5
void __fastcall TForm1::IdHTTP1WorkEnd(TObject *Sender,
      TWorkMode AWorkMode)
{
ShowMessage("Done");
}
Через несколько секунд после запуска выскакивает "Done"!!!!! А файл лиш четь скачался ((
Файл скачивается лиш на 1,70 КБ (1*746 байт)
А нужно скачать 714 КБ (731*136 байт) "Полный размер файла!!!!
Скачиваю с ucoz.ru ..... Может от туда нельзя?? Хотя txt качаются на ура!!! А exe не хочет!!
Блин, в чем же дело???
0
287 / 228 / 27
Регистрация: 13.06.2010
Сообщений: 744
24.02.2012, 21:58 4
Ну так залейте на свой хостинг и попробуйте. Могу на свой залить, если поможет) файл в студию! (с браузера-то качается?
0
40 / 40 / 6
Регистрация: 28.07.2011
Сообщений: 431
25.02.2012, 14:06  [ТС] 5
Всё проблему решил!!!
Если качать с UCOZ файлы exe на прямую то перед загрузкой выскакивает окно предупрездения о возможном нахождении вируса..
C++
1
2
3
Вы пытаетесь загрузить файл "mg.exe" (714.0 Kb) с сайта "сайт.ucoz.ru".
[COLOR="Red"]Внимание! Данный файл может содержать вирусы.[/COLOR]
Перед запуском файла на компьютере обязательно проверьте его программой-антивирусом.
Вот эту HTML страничку и скачивала моя программа ))))).........
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2012, 14:06

Макрос после визуализации формы почему-то ждёт, пока окно книги станет активным
Уважаемые спецы! Столкнулся со следующей проблемой. У меня расчётная программа, для визуализации...

Создать Loader, который ждет пока не откроется нужный процесс а после чего заменяет массив байтов другим
как создать лоадер который ждет пока не откроется нужный процесс а после чего заменяет массив...

Программа ждет 5 секунд ввода номера строки, если ввод не происходит, выводится весь файл
программа ждет 5 секунд ввода номера строки,если ввод не происходит, выводится весь файл. Может...

IdHTTP и IdHTTP сервер: как отправить сообщение от сервера к клиенту?
Всем привет, отправляю файл по частям с клиента на сервер, и хочу получать обратное сообщение, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru