Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CInternetSession::OpenURL(ftp...) и размер файла, GetLength() возвращает бред 
:(
    Опции темы
Bukmop
Дата 23.8.2007, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 1.6.2006
Где: Москва

Репутация: 2
Всего: 3



Всем привет!
Пытаюсь узнать размер ФТП файла, а GetLength() - возвращает бред.

MSDN гласит:
Цитата
CInternetSession::OpenURL
Return Value
Returns a file handle for FTP, GOPHER, HTTP, and FILE-type Internet services only. Returns NULL if parsing was unsuccessful.

The pointer that OpenURL returns depends on pszURL's type of service. The table below illustrates the possible pointers OpenURL can return.

URL            type Returns
file://        CStdioFile*
http://        CHttpFile*
gopher://      CGopherFile*
ftp://         CInternetFile*


Код

CInternetSession* pInet=new CInternetSession("FTP");
CInternetFile* pFile=(CInternetFile*)m_pInet->OpenURL("ftp://ftp.microsoft.com/Products/mediaplayer/UNIX/README.sunos",1,INTERNET_FLAG_TRANSFER_BINARY|INTERNET_FLAG_RELOAD|INTERNET_FLAG_DONT_CACHE);
ULONGLONG nSize=pFile->GetLength();
pFile->Close();
delete pFile;
pInet->Close();
delete pInet;

Кто наступал на подобные грабли, помогите.


Это сообщение отредактировал(а) Bukmop - 27.8.2007, 11:48
PM MAIL   Вверх
FREEDEV
Дата 23.8.2007, 23:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 238
Регистрация: 6.3.2007
Где: Украина->Одесс а

Репутация: нет
Всего: 3



а чего возвращает?

может такие настройки самого фтп...
--------------------
Microsoft Windows Visla ©
PM MAIL   Вверх
Bukmop
Дата 24.8.2007, 07:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 1.6.2006
Где: Москва

Репутация: 2
Всего: 3



Всегда возвращает 1460 вместо 16661 (для данного примера).

PM MAIL   Вверх
Bukmop
Дата 27.8.2007, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 1.6.2006
Где: Москва

Репутация: 2
Всего: 3



Дополнительная информация.

Если перед pFile->GetLength();
ставлю Sleep(100); - GetLength(); возвращает 2920
ставлю Sleep(300); - GetLength(); возвращает 7300
ставлю Sleep(>=500); - GetLength(); возвращает 8192 (более 30000 не пробывал) smile 

Вылетает при попытке выполнить pFile->Seek(...)
GetLastError() возвращает 183 - ERROR_ALREADY_EXISTS - Cannot create a file when that file already exists. smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0396 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.