powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / WinHttpReceiveResponse - Неверный дескриптор
3 сообщений из 3, страница 1 из 1
WinHttpReceiveResponse - Неверный дескриптор
    #39400789
А
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А
Гость
Использую функцию WinHttpReceiveResponse . На Windows 7 все работает нормально, на XP выдает Неверный дескриптор. Самое интересное, что мой напарник пробовал запустить мою программу на 8.1 и тоже получил Неверный дескриптор. В чем может быть прикол?

Привожу текст функции (взял из инета, подобное встречается не 1 раз)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
DWORD dwSize = 0;
  DWORD dwDownloaded = 0;
  LPSTR pszOutBuffer;
  BOOL  bResults = FALSE;
  HINTERNET  hSession = NULL,
                   hConnect = NULL,
	           hRequest = NULL;

  // Use WinHttpOpen to obtain a session handle.
  hSession = WinHttpOpen( L"WinHTTP Example/1.0",
                          WINHTTP_ACCESS_TYPE_DEFAULT_PROXY,
                          WINHTTP_NO_PROXY_NAME,
                          WINHTTP_NO_PROXY_BYPASS, 0 );

  // Specify an HTTP server.
  if( hSession )
	hConnect = WinHttpConnect( hSession, L"xn--80ajihiadw2acf5i.xn--p1ai",
							   INTERNET_DEFAULT_HTTP_PORT, 0 );

  // Create an HTTP request handle.
  if( hConnect )
	hRequest = WinHttpOpenRequest( hConnect, L"GET", L"test.php",
								   NULL, WINHTTP_NO_REFERER,
								   WINHTTP_DEFAULT_ACCEPT_TYPES, 0);
  // Send a request.
  if( hRequest )
	bResults = WinHttpSendRequest( hRequest,
								   WINHTTP_NO_ADDITIONAL_HEADERS, 0,
								   WINHTTP_NO_REQUEST_DATA, 0,
								   0, 0 );

  // End the request.
  if( bResults )
	bResults = WinHttpReceiveResponse( hRequest, NULL );

  // Keep checking for data until there is nothing left.
  if( bResults )
  {
	do
    {
      // Check for available data.
      dwSize = 0;
	  WinHttpQueryDataAvailable( hRequest, &dwSize );

      // Allocate space for the buffer.
      pszOutBuffer = new char[dwSize+1];
      if( !pszOutBuffer )
       dwSize=0;
      else
      {
        // Read the data.
		ZeroMemory( pszOutBuffer, dwSize+1 );

		WinHttpReadData( hRequest, (LPVOID)pszOutBuffer,  dwSize, &dwDownloaded);

		// Free the memory allocated to the buffer.
		if(dwSize)
 		  ShowMessage(AnsiString(pszOutBuffer));
		delete [] pszOutBuffer;
      }
    } while( dwSize > 0 );
  }

  // Close any open handles.
  if( hRequest ) WinHttpCloseHandle( hRequest );
  if( hConnect )  WinHttpCloseHandle( hConnect );
  if( hSession )  WinHttpCloseHandle( hSession );

}
...
Рейтинг: 0 / 0
WinHttpReceiveResponse - Неверный дескриптор
    #39400800
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ана XP выдает Неверный дескриптор
Где выдаёт? Не вижу в коде обработки ошибок от слова "вообще".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
WinHttpReceiveResponse - Неверный дескриптор
    #39400815
A
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здесь ставил соответственно

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
 if( hRequest )
	bResults = WinHttpSendRequest( hRequest,
								   WINHTTP_NO_ADDITIONAL_HEADERS, 0,
								   WINHTTP_NO_REQUEST_DATA, 0,
								   0, 0 );
  if(!bResults) ShowMessage(GetLastError());

  // End the request.
  if( bResults )
	bResults = WinHttpReceiveResponse( hRequest, NULL );
  if(!bResults) ShowMessage(GetLastError());
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / WinHttpReceiveResponse - Неверный дескриптор
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]