Скачивание файла
Нужно написать прогу на скачивание файла с интернета
пробовал это AnsiString URL_DOWNLOAD ="http://fex.net/load/168196411239/7963174"; AnsiString FILE_NAME="9.ico"; TFileStream* FILE_STREAM = new TFileStream(FILE_NAME, fmCreate | fmOpenWrite); IdHTTP1->Get(URL_DOWNLOAD, FILE_STREAM); delete FILE_STREAM; но после клика по button выскакивает ошибка Cannot create file 9.ico |
у кого-то есть идеи?
|
null999, не вижу чтобы было указано, в какой каталог сохранять файл 9.ico.
|
mwz, без указания каталога файл сохраняется рядом с exe
|
null999, а в какой папке лежит exe-файл?
Я не зря задал предыдущий вопрос-утверждение. Частный его случай: если программа лежит внутри %ProgramFiles% или %ProgramFiles86%, то при запуске без административных прав у неё нет прав на запись в свою папку и вы получите отлуп. Да и не факт, что программа старается сохранить файл в своём каталоге. И указание только имени файла без указания места сохранения может вас ещё не раз подвести (не в этом — так в другом случае) при казалось бы абсолютно ясном алгоритме. PS Ну и, что следует из сказанного выше, попробуйте для эксперимента запустить её с правами администратора. |
mwz, при запуске от админа сохраняется файл весом 0 байт с именем 9.ico
|
null999, т.е. половина проблемы решена. Ошибок больше нет?
Теперь надо запрограммировать так, чтобы файл сохранялся не в запрещённых для записи каталогах (обычно для выбора каталога сохранения используют диалоговое окно, с автоматической подстановкой имени того каталога, куда файл должен сохраниться по умолчанию; если каталог не существует — он должен быть создан программой в процессе), и разбираться почему файл не создаётся правильно. |
mwz, немного не правильно выразился, наверное...файл создается, но ошибка всеравно появляется
|
Цитата:
|
mwz, да
|
попробовал на другом пк...при нажатии на баттон, появляеться ошибка "302 moved" и создается пустой файл 9.ico
|
проблема решилась, нужно в в IdHTTP1 в параметре HandleRedirects поставить true
|
АП
Возможно ли этот вариант подружить с https ? |
Время: 22:54. |
Время: 22:54.
© OSzone.net 2001-