Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

24.08.2007, 10:58
|
|
Познающий
Регистрация: 13.01.2007
Сообщений: 78
Провел на форуме: 65872
Репутация:
10
|
|
подвисает wininet
вот есть такой код получающий страницы по winnet,
зачастую после вывода строки HttpOpenRequest Successfull перед функцией HttpSendRequest программа подвисает на несколько минут, либо очень надолго, можно ли сделать какой-нибудь таймаут для этих ф-й или как можно получать страницу с таймаутом?
Код:
char* getpage(char* userag,char* proxy, char* url, char* document, char* referer)
{
char szData[1500];
DWORD dwBytesRead;
HINTERNET hInternet = ::InternetOpen(userag, INTERNET_OPEN_TYPE_PROXY, proxy,NULL,0);
if (hInternet != NULL)
{
puts("internetOpen successfull");
HINTERNET hConnect =::InternetConnect(hInternet, url, INTERNET_DEFAULT_HTTP_PORT, NULL,NULL, INTERNET_SERVICE_HTTP,0,1u);
if (hConnect != NULL) {
puts("internetConnect successfull");
HINTERNET hRequest =::HttpOpenRequest(hConnect, TEXT("GET"), document, NULL, referer, 0, INTERNET_FLAG_KEEP_CONNECTION, 1);
if (hRequest != NULL) {
puts("HttpOpenRequest successfull");
//вот тут подвисает иногда!!! BOOL bSend = ::HttpSendRequest(hRequest, NULL,0, NULL,0);
if (bSend) {
puts("httpSendRequest successfull");
BOOL bRead = ::InternetReadFile(hRequest, szData,sizeof(szData)-1, &dwBytesRead);
if (bRead == FALSE || dwBytesRead == 0)
{
puts("error readFile");
return 0;
}
szData[dwBytesRead] = 0;
return szData;
}
::InternetCloseHandle(hRequest);
}
::InternetCloseHandle(hConnect);
}
/
::InternetCloseHandle(hInternet);
}
return 0;
}
Последний раз редактировалось Satell; 24.08.2007 в 11:11..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|