Compartir a través de


Función InternetCloseHandle (wininet.h)

Cierra un único identificador de Internet.

Sintaxis

BOOL InternetCloseHandle(
  [in] HINTERNET hInternet
);

Parámetros

[in] hInternet

Identificador que se va a cerrar.

Valor devuelto

Devuelve TRUE si el identificador se cierra correctamente o FALSE en caso contrario. Para obtener información de error extendida, llame a GetLastError.

Comentarios

La función finaliza las operaciones pendientes en el identificador y descarta los datos pendientes.

Es seguro llamar a InternetCloseHandle siempre y cuando no se realicen llamadas API ni se realicen mediante el identificador. Una vez que una API ha devuelto ERROR_IO_PENDING, es seguro llamar a InternetCloseHandle para cancelar esa E/S, siempre y cuando no se emitan llamadas API posteriores con el identificador.

Es seguro llamar a InternetCloseHandle en una devolución de llamada para el identificador que se está cerrando. Si hay una devolución de llamada de estado registrada para el identificador que se está cerrando y el identificador se creó con un valor de contexto distinto de NULL, se realizará una devolución de llamada INTERNET_STATUS_HANDLE_CLOSING . Esta indicación será la última devolución de llamada realizada desde un identificador e indica que el identificador se está destruyendo.

Si las solicitudes asincrónicas están pendientes para el identificador o cualquiera de sus identificadores secundarios, el identificador no se puede cerrar inmediatamente, pero se invalidará. Las nuevas solicitudes que se intenten usar el identificador devolverán con una notificación de ERROR_INVALID_HANDLE . Las solicitudes asincrónicas se completarán con INTERNET_STATUS_REQUEST_COMPLETE. Las aplicaciones deben estar preparadas para recibir cualquier indicación de INTERNET_STATUS_REQUEST_COMPLETE en el mango antes de que se realice la indicación final INTERNET_STATUS_HANDLE_CLOSING , lo que indica que el mango está completamente cerrado.

Una aplicación puede llamar a GetLastError para determinar si las solicitudes están pendientes. Si GetLastError devuelve ERROR_IO_PENDING, hubo solicitudes pendientes cuando se cerró el identificador.

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).
 

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

Habilitación de la funcionalidad de Internet

FtpFindFirstFile

FtpOpenFile

GopherFindFirstFile

HttpOpenRequest

InternetConnect

Funciones de WinINet