C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
downloader
Dmitri
Отправлено: 09.07.2004, 07:31


admin@localhost

Группа: Модератор
Сообщений: 110



Я в непонятках. Пишу качалку файлов. Функция InternetOpenUrl не выполняется.

CODE

FILE *in;
DWORD ResumePos=0, BufferLen, SumSize=0;
HINTERNET hSession, hURL;
char Buffer[1024];
bool err;
in=fopen(edFile->Text.c_str(),"a+");
fseek(in,0,2);
nado=true;
 hSession=InternetOpen(ParamStr(0).c_str(),PRE_CONFIG_INTERNET_ACCESS,NULL,NULL,0);
[b]// hURL не равен нулю, функция InternetOpenUrl не работает[/b]
hURL=InternetOpenUrl(hSession,edURL->Text.c_str(),NULL,0,0,0);
if(!hURL)
 ShowMessage("");
InternetQueryDataAvailable(hURL,&SumSize,0,0);
lbSize->Caption=SumSize;
if(ResumePos)
 InternetSetFilePointer(hURL,ResumePos,NULL,0,0);
do {
 err=InternetReadFile(hURL,Buffer,sizeof(Buffer),&BufferLen);
 if(!err) {
   Application->MessageBox("Îøèáêà","Îøèáêà",MB_OK|MB_ICONERROR);
   exit(0);
 }
 fwrite(&Buffer,BufferLen,1,in);
 Application->ProcessMessages();
} while(BufferLen!=0 || nado==true);


Кто что думает насчет этого

Отредактировано Dmitri — 09/07/2004, 20:38
Dmitri
Отправлено: 09.07.2004, 17:38


admin@localhost

Группа: Модератор
Сообщений: 110



люди
Gedeon
Отправлено: 09.07.2004, 18:41


Ветеран

Группа: Модератор
Сообщений: 1742



А как не работает? Что пишет ошибка какая-то или просто проходит без видимых телодвижений?
QUOTE

// hURL не равен нулю, функция InternetOpenUrl не работает

Так он и не д.б. равен нулю если функция не свалилась, внимательно почитайте MSDN и разберитесь с параметрами, сейчас домой пора, а завтра если будет время и у Вас не получится попробую помочь.
Успехов.

Отредактировано Gedeon — 09/07/2004, 19:53
Dmitri
Отправлено: 09.07.2004, 20:10


admin@localhost

Группа: Модератор
Сообщений: 110



В смысле hURL равен нулю. GetLastError -- 1 2 0 0 6. Сначала вываливается на if(!hURL), затем на if(!err).

Вернуться в Вопросы программирования в C++Builder