powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / WinINet: Реально ли получить имя файла ?
4 сообщений из 4, страница 1 из 1
WinINet: Реально ли получить имя файла ?
    #35663036
Фотография ksk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.

Ситуация такая: С помощью WinINet функций загружаю с сервера файлы.
Ну, типа HttpOpenRequest, HttpSendRequest, InternetReadFile итд. Всё работает.

Проблема в следующем:
Если есть ссылка типа http://www.codeproject.com/KB/dialog/CGlassDialog/cglassdialog_source.zip, то у меня в явном виде имеется имя файла, с которым я могу сохранить полученное.
Если есть ссылка, для которой в теге <А href="чегототам">Filename.ext</А> явным образом прописано имя файла - тоже всё понятно.

Если же есть например такая ссылка: http://www.gz-volga.ru/pls/kea/utl.download_attach?p_id=365926
или такая: <А href="http://spl.gz-kuban.ru/spl.gz-kuban.ru/blob;jsessionid=8282F7DD226BBBC1F7CBB6B4EB7640FB?id=152710">Скачать</А>,

то тогда у меня вообще нет имени файла. Однако, если делать через IE -> SaveTargetAs - он каким-то образом получает имя файла при закачке, то есть это как-то возможно.
Просмотрел список возможных флагов для HttpQueryInfo - ничего подходящего не нашлось.

Подскажите, пожалуйста, каким образом можно всё-таки получить в процессе закачки файла его имя. Вообще не представляю себе, с какого конца к этой проблеме подступиться.

URLDownloadToFile тоже не вариант, поскольку он не умеет сам определять имя файла.
...
Рейтинг: 0 / 0
WinINet: Реально ли получить имя файла ?
    #35663277
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имя в ответе сервера указывается иногда.
...
Рейтинг: 0 / 0
WinINet: Реально ли получить имя файла ?
    #35663600
verzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GET /spl.gz-kuban.ru/blob;jsessionid=8282F7DD226BBBC1F7CBB6B4EB7640FB?id=152710 HTTP/1.1..
Content-Disposition: attachment; filename=%D0%9A%D0%94+%D0%BF%D0%BE+%D0%9B%D0%BE%D1%82%D1%83+6030.rar
..
GET /pls/kea/utl.download_attach?p_id=365926 HTTP/1.1..
Content-Disposition: filename=ИЗВЕЩЕНИЕ.doc
..

Модератор: Тема перенесена из форума "C++".
...
Рейтинг: 0 / 0
WinINet: Реально ли получить имя файла ?
    #35664126
Фотография ksk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!

Это именно то, что я и хотел получить.
Добавил такое:
Код: plaintext
1.
2.
   TCHAR szContentDSP[ 512 ];
   DWORD dwDSPSize =  512 ;
   BOOL b=::HttpQueryInfo(m_hHttpFile, HTTP_QUERY_CONTENT_DISPOSITION , szContentDSP, &dwDSPSize, NULL);

и получил именно то, что Вы показали.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / WinINet: Реально ли получить имя файла ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]