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.

Nota O WinINet não dá suporte a implementações de servidor. Além disso, ele não deve ser usado de um serviço. Para implementações de servidor ou serviços, use Os Serviços HTTP do Microsoft Windows (WinHTTP).
 

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

Confira também

Habilitando a funcionalidade da Internet

Ftpfindfirstfile

FtpOpenFile

GopherFindFirstFile

HttpOpenRequest

Internetconnect

Funções WinINet