InternetReadFile() vs recv()
От: aleksan  
Дата: 23.02.12 02:15
Оценка:
Вопрос в следующем:
Соединение с сервером устанавливается с помощью WinInet последовательным вызовом функций
HttpOpenRequest, HttpSendRequest, HttpQueryInfo.
После этого получаю дескриптор сокета таким вот образом:

SOCKET GetSocket(HINTERNET hRequest)
{
INTERNET_DIAGNOSTIC_SOCKET_INFO idsi;
DWORD bufferSize = sizeof(idsi);
if (!InternetQueryOption(hRequest, INTERNET_OPTION_DIAGNOSTIC_SOCKET_INFO, &idsi, &bufferSize))
return INVALID_SOCKET;
else
if (idsi.Socket == INVALID_SOCKET)
return INVALID_SOCKET;
return (SOCKET)idsi.Socket;
}

Если после этого вызвать функцию recv(....), котороя использует данный сокет то получаю мусор,
хотя никаких ошибок нет. А InternetReadFile отрабатывает нормально.
Что тут не так?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.