Função InternetOpenA (wininet.h)
Inicializa o uso de um aplicativo das funções WinINet.
Sintaxe
HINTERNET InternetOpenA(
[in] LPCSTR lpszAgent,
[in] DWORD dwAccessType,
[in] LPCSTR lpszProxy,
[in] LPCSTR lpszProxyBypass,
[in] DWORD dwFlags
);
Parâmetros
[in] lpszAgent
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do aplicativo ou da entidade que chama as funções WinINet. Esse nome é usado como o agente de usuário no protocolo HTTP.
[in] dwAccessType
Tipo de acesso necessário. Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
Resolve todos os nomes de host localmente. |
|
Recupera o proxy ou a configuração direta do registro. |
|
Recupera o proxy ou a configuração direta do registro e impede o uso de um arquivo de inicialização do Microsoft JScript ou da Configuração da Internet (INS). |
|
Passa solicitações para o proxy, a menos que uma lista de bypass de proxy seja fornecida e o nome a ser resolvido ignore o proxy. Nesse caso, a função usa INTERNET_OPEN_TYPE_DIRECT. |
[in] lpszProxy
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome dos servidores proxy a serem usados quando o acesso de proxy for especificado definindo dwAccessType como INTERNET_OPEN_TYPE_PROXY. Não use uma cadeia de caracteres vazia, pois InternetOpen a usará como o nome do proxy. As funções WinINet reconhecem apenas proxies de tipo CERN (somente HTTP) e o gateway FTP do TIS (somente FTP). Se o Microsoft Internet Explorer estiver instalado, essas funções também darão suporte a proxies SOCKS. As solicitações FTP podem ser feitas por meio de um proxy de tipo CERN alterando-as para uma solicitação HTTP ou usando InternetOpenUrl. Se dwAccessType não estiver definido como INTERNET_OPEN_TYPE_PROXY, esse parâmetro será ignorado e deverá ser NULL. Para obter mais informações sobre como listar servidores proxy, consulte a seção Listagem de Servidores Proxy de Habilitação da Funcionalidade da Internet.
[in] lpszProxyBypass
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica uma lista opcional de nomes de host ou endereços IP, ou ambos, que não devem ser roteados por meio do proxy quando dwAccessType é definido como INTERNET_OPEN_TYPE_PROXY. A lista pode conter curingas. Não use uma cadeia de caracteres vazia, pois o InternetOpen a usará como a lista de bypass de proxy. Se esse parâmetro especificar a macro "<local>", a função ignorará o proxy para qualquer nome de host que não contenha um período.
Por padrão, o WinINet ignorará o proxy para solicitações que usam os nomes de host "localhost", "loopback", "127.0.0.1" ou "[::1]". Esse comportamento existe porque um servidor proxy remoto normalmente não resolve esses endereços corretamente.Internet Explorer 9: você pode remover o computador local da lista de bypass de proxy usando a macro "<-loopback>".
Se dwAccessType não estiver definido como INTERNET_OPEN_TYPE_PROXY, esse parâmetro será ignorado e deverá ser NULL.
[in] dwFlags
Opções. Esse parâmetro pode ser uma combinação dos seguintes valores.
Valor | Significado |
---|---|
|
Faz apenas solicitações assíncronas em identificadores decrescentes do identificador retornado dessa função. |
|
Não faz solicitações de rede. Todas as entidades são retornadas do cache. Se o item solicitado não estiver no cache, um erro adequado, como ERROR_FILE_NOT_FOUND, será retornado. |
|
Idêntico a INTERNET_FLAG_FROM_CACHE. Não faz solicitações de rede. Todas as entidades são retornadas do cache. Se o item solicitado não estiver no cache, um erro adequado, como ERROR_FILE_NOT_FOUND, será retornado. |
Retornar valor
Retorna um identificador válido que o aplicativo passa para funções WinINet subsequentes. Se InternetOpen falhar, ele retornará NULL. Para recuperar uma mensagem de erro específica, chame GetLastError.
Comentários
InternetOpen é a primeira função WinINet chamada por um aplicativo. Ele informa à DLL da Internet para inicializar estruturas de dados internas e se preparar para chamadas futuras do aplicativo. Quando o aplicativo terminar de usar as funções da Internet, ele deverá chamar InternetCloseHandle para liberar o identificador e todos os recursos associados.
O aplicativo pode fazer qualquer número de chamadas para InternetOpen, embora uma única chamada normalmente seja suficiente. O aplicativo pode precisar definir comportamentos separados para cada instância internetOpen , como servidores proxy diferentes configurados para cada uma.
Depois que o aplicativo de chamada terminar de usar o identificador HINTERNET retornado pelo InternetOpen, ele deverá ser fechado usando a função InternetCloseHandle .
Como todos os outros aspectos da API WinINet, essa função não pode ser chamada com segurança de dentro do DllMain ou dos construtores e destruidores de objetos globais.
Observação
O cabeçalho wininet.h define InternetOpen como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Requisito | Valor |
---|---|
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 |