Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Вниз

размер файла WinSock   Найти похожие ветки 

 
Dot   (2007-01-28 03:00) [0]

Всем привет.
Собираюсь качать файл с инета с помощью winsock.
собственно проблема только одна, это узнать размер файла..
Если узнавать размер через ф-ии WinInet API, то необходимость в зачатьке сокетами отпадает естественно, закачать тогда можно и WinInet ф-ми. Однако это не приемлимо в проекте.
объявлять огромные массивы в качестве буфера конечно можно, и файл скачается, но метод, мягко сказать, некорректный.
Качаю естественно
recv(Sock,Buffer,SizeOf(Buffer));
вот и проблема узнать размер, дабы установить =(

В силу недостаточной компетентности задам ещё один вопрос, который возможно из фантастики.
можно ли поблочно читать файл из интернета сокетным recv. Собственно если можно, хотя я мало себе представляю как, то вопрос отпадает в силу простоты решения.

Заранее спасибо.


 
Dmitrij_K   (2007-01-28 08:59) [1]


> можно ли поблочно читать файл из интернета сокетным recv

Файл нельзя, тем более из интернета.
Данные из сокета можно, а иногда и нужно.
Но лучше пользоваться Wininet,раз пока плохо понимаешь в этом вопросе.


 
Сергей М. ©   (2007-01-29 08:53) [2]


> можно ли поблочно читать файл из интернета сокетным recv


Можно.


> проблема только одна, это узнать размер файла


Об этом как правило сообщает сам сервер перед тем как передавать содержимое файла. А уж каким образом сообщает - это зависит от конкретного прикладного протокола инф-обмена, о коем ты умалчиваешь.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.04 c
2-1170374503
Ref
2007-02-02 03:01
2007.02.18
Memo и Word


2-1170242055
asq
2007-01-31 14:14
2007.02.18
графическое отображения связей


4-1160299759
breeze
2006-10-08 13:29
2007.02.18
дата создания процесса


15-1169707311
Гарик
2007-01-25 09:41
2007.02.18
TDX cmponents


2-1170316509
Tornado
2007-02-01 10:55
2007.02.18
Отследить закрытие чужого приложения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский