Função InternetCloseHandle (wininet.h)
Fecha um único identificador da Internet.
Sintaxe
BOOL InternetCloseHandle(
[in] HINTERNET hInternet
);
Parâmetros
[in] hInternet
Identificador a ser fechado.
Valor retornado
Retornará TRUE se o identificador for fechado com êxito ou FALSE caso contrário. Para obter informações de erro estendidas, chame GetLastError.
Comentários
A função encerra todas as operações pendentes no identificador e descarta todos os dados pendentes.
É seguro chamar InternetCloseHandle desde que nenhuma chamada à API esteja sendo feita ou seja feita usando o identificador. Depois que uma API tiver retornado ERROR_IO_PENDING, é seguro chamar InternetCloseHandle para cancelar essa E/S, desde que nenhuma chamada à API subsequente seja emitida com o identificador.
É seguro chamar InternetCloseHandle em um retorno de chamada para o identificador que está sendo fechado. Se houver um retorno de chamada status registrado para o identificador que está sendo fechado e o identificador tiver sido criado com um valor de contexto não NULL, um retorno de chamada INTERNET_STATUS_HANDLE_CLOSING será feito. Essa indicação será o último retorno de chamada feito de um identificador e indica que o identificador está sendo destruído.
Se as solicitações assíncronas estiverem pendentes para o identificador ou qualquer um de seus identificadores filho, o identificador não poderá ser fechado imediatamente, mas será invalidado. Todas as novas solicitações tentadas usando o identificador retornarão com uma notificação de ERROR_INVALID_HANDLE . As solicitações assíncronas serão concluídas com INTERNET_STATUS_REQUEST_COMPLETE. Os aplicativos devem estar preparados para receber qualquer indicação INTERNET_STATUS_REQUEST_COMPLETE no identificador antes que a indicação de INTERNET_STATUS_HANDLE_CLOSING final seja feita, o que indica que o identificador está completamente fechado.
Um aplicativo pode chamar GetLastError para determinar se as solicitações estão pendentes. Se GetLastError retornar ERROR_IO_PENDING, houve solicitações pendentes quando o identificador foi fechado.
Como todos os outros aspectos da API WinINet, essa função não pode ser chamada com segurança de dentro de DllMain ou dos construtores e destruidores de objetos globais.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | wininet.h |
Biblioteca | Wininet.lib |
DLL | Wininet.dll |