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