Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.18;
Скачать: CL | DM;

Вниз

размер файла 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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
2-1170244848
sergeyst
2007-01-31 15:00
2007.02.18
Обработка исключений в IB


4-1160039736
Михаил И.
2006-10-05 13:15
2007.02.18
Найти процесс


3-1164623047
Feds
2006-11-27 13:24
2007.02.18
Ошибка с проверкой на Null


2-1170039213
givs
2007-01-29 05:53
2007.02.18
Пытаешься поместить его на форму выдает ошибку,


9-1143825829
Yegorchic
2006-03-31 21:23
2007.02.18
Поворот FreeForm