Función HttpQueryInfoW (wininet.h)

Recupera la información de encabezado asociada a una solicitud HTTP.

Sintaxis

BOOL HttpQueryInfoW(
  [in]      HINTERNET hRequest,
  [in]      DWORD     dwInfoLevel,
  [in, out] LPVOID    lpBuffer,
  [in, out] LPDWORD   lpdwBufferLength,
  [in, out] LPDWORD   lpdwIndex
);

Parámetros

[in] hRequest

Identificador devuelto por una llamada a la función HttpOpenRequest o InternetOpenUrl .

[in] dwInfoLevel

Combinación de un atributo que se va a recuperar y marcas que modifican la solicitud. Para obtener una lista de posibles valores de atributo y modificador, vea Marcas de información de consulta.

[in, out] lpBuffer

Puntero a un búfer para recibir la información solicitada. Este parámetro no debe ser NULL.

[in, out] lpdwBufferLength

Puntero a una variable que contiene, en la entrada, el tamaño en bytes del búfer al que apunta lpvBuffer.

Cuando la función se devuelve correctamente, esta variable contiene el número de bytes de información escrita en el búfer. En el caso de una cadena, el recuento de bytes no incluye el carácter nulo de terminación de la cadena.

Cuando la función
produce un error extendido con un código de error extendido de ERROR_INSUFFICIENT_BUFFER, la variable a la que apunta lpdwBufferLength contiene al salir del tamaño, en bytes, de un búfer lo suficientemente grande como para recibir la información solicitada. Después, la aplicación que llama puede asignar un búfer de este tamaño o mayor y llamar a la función de nuevo.

[in, out] lpdwIndex

Puntero a un índice de encabezado de base cero que se usa para enumerar varios encabezados con el mismo nombre. Al llamar a la función , este parámetro es el índice del encabezado especificado que se va a devolver. Cuando se devuelve la función, este parámetro es el índice del encabezado siguiente. Si no se encuentra el siguiente índice, se devuelve ERROR_HTTP_HEADER_NOT_FOUND .

Valor devuelto

Devuelve TRUE si es correcto o FALSE en caso contrario. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Puede recuperar los siguientes tipos de datos de HttpQueryInfo:

  • Cadenas (valor predeterminado)
  • SYSTEMTIME (para fechas)
  • DWORD (para STATUS_CODE, CONTENT_LENGTH, etc., si se ha usado HTTP_QUERY_FLAG_NUMBER )

Si la aplicación requiere que los datos se devuelvan como un tipo de datos distinto de una cadena, debe incluir el modificador adecuado con el atributo pasado a dwInfoLevel.

La función HttpQueryInfo está disponible en Microsoft Internet Explorer 3.0 para caracteres ISO-8859-1 (función HttpQueryInfoA ) y en Internet Explorer 4.0 o posterior para caracteres ISO-8859-1 (función HttpQueryInfoA ) y para caracteres ISO-8859-1 convertidos en caracteres UTF-16LE. (función HttpQueryInfoW ).

Nota La función HttpQueryInfoA representa encabezados como caracteres ISO-8859-1 que no son caracteres ANSI. La función HttpQueryInfoW representa encabezados como caracteres ISO-8859-1 convertidos a caracteres UTF-16LE. Como resultado, nunca es seguro usar la función HttpQueryInfoW cuando los encabezados pueden contener caracteres no ASCII. En su lugar, una aplicación puede usar las funciones MultiByteToWideChar y WideCharToMultiByte con un parámetro Codepage establecido en 28591 para asignar entre caracteres ANSI y caracteres UTF-16LE.
 
Consulte Recuperación de encabezados HTTP para obtener un código de ejemplo que llama a la función HttpQueryInfo .

Al igual que todos los demás aspectos de la API de WinINet, esta función no se puede llamar de forma segura desde DllMain ni desde los constructores y destructores de objetos globales.

Nota WinINet no admite implementaciones de servidor. Además, no se debe usar desde un servicio. En el caso de las implementaciones de servidor o los servicios, use Servicios HTTP de Microsoft Windows (WinHTTP).
 

Nota:

El encabezado wininet.h define HttpQueryInfo como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wininet.h
Library Wininet.lib
Archivo DLL Wininet.dll

Consulte también

Sesiones HTTP

Recuperación de encabezados HTTP

Funciones de WinINet