Função InternetConnectW (wininet.h)
Abre uma sessão FTP (Protocolo de Transferência de Arquivo) ou HTTP para um determinado site.
Sintaxe
HINTERNET InternetConnectW(
[in] HINTERNET hInternet,
[in] LPCWSTR lpszServerName,
[in] INTERNET_PORT nServerPort,
[in] LPCWSTR lpszUserName,
[in] LPCWSTR lpszPassword,
[in] DWORD dwService,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
Parâmetros
[in] hInternet
Identificador retornado por uma chamada anterior para internetOpen.
[in] lpszServerName
Ponteiro para um cadeia de caracteresterminada nula que especifica o nome do host de um servidor da Internet. Como alternativa, a cadeia de caracteres pode conter o número IP do site, no formato ascii pontilhado-decimal (por exemplo, 11.0.1.45).
[in] nServerPort
Protocolo de Controle de Transmissão/Protocolo de Internet (TCP/IP) no servidor. Esses sinalizadores definem apenas a porta usada. O serviço é definido pelo valor de dwService. Esse parâmetro pode ser um dos valores a seguir.
Valor | Significado |
---|---|
|
Usa a porta padrão para servidores FTP (porta 21). |
|
Usa a porta padrão para servidores Gopher (porta 70).
Observação Windows XP e Windows Server 2003 R2 e somente anteriores.
|
|
Usa a porta padrão para servidores HTTP (porta 80). |
|
Usa a porta padrão para servidores HTTPS (Secure Hypertext Transfer Protocol) (porta 443). |
|
Usa a porta padrão para servidores de firewall SOCKS (porta 1080). |
|
Usa a porta padrão para o serviço especificado por dwService. |
[in] lpszUserName
Ponteiro para um cadeia de caracteresterminada nula que especifica o nome do usuário para fazer logon. Se esse parâmetro for NULL, a função usará um padrão apropriado. Para o protocolo FTP, o padrão é "anônimo".
[in] lpszPassword
Ponteiro para um cadeia de caracteresterminada nula que contém a senha a ser usada para fazer logon. Se lpszPassword e lpszUsername estiverem NULL, a função usará a senha "anônima" padrão. No caso do FTP, a senha padrão é o nome de email do usuário. Se lpszPassword for NULL, mas lpszUsername não estiver NULL, a função usará uma senha em branco.
[in] dwService
Tipo de serviço a ser acessado. Esse parâmetro pode ser um dos valores a seguir.
Valor | Significado |
---|---|
|
Serviço FTP. |
|
Serviço Gopher.
Observação Windows XP e Windows Server 2003 R2 e somente anteriores.
|
|
Serviço HTTP. |
[in] dwFlags
Opções específicas para o serviço usado. Se
dwService é INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE faz com que o aplicativo use semântica de FTP passiva.
[in] dwContext
Ponteiro para uma variável que contém um valor definido pelo aplicativo que é usado para identificar o contexto do aplicativo para o identificador retornado em retornos de chamada.
Valor de retorno
Retorna um identificador válido para a sessão se a conexão for bem-sucedida ou NULL caso contrário. Para recuperar informações de erro estendidas, chame GetLastError. Um aplicativo também pode usar InternetGetLastResponseInfo para determinar por que o acesso ao serviço foi negado.
Observações
A tabela a seguir descreve o comportamento das quatro configurações possíveis de lpszUsername e lpszPassword.
lpszUsername | lpszPassword | Nome de usuário enviado ao servidor FTP | Senha enviada para o servidor FTP |
---|---|---|---|
NULL | NULL | "anônimo" | Nome de email do usuário |
Cadeia de caracteres de NULL não |
NULL | lpszUsername | "" |
NULL | Cadeia de caracteres de NULL não |
ERRO | ERRO |
Cadeia de caracteres de NULL não |
Cadeia de caracteres de NULL não |
lpszUsername | lpszPassword |
Para sites FTP, InternetConnect realmente estabelece uma conexão com o servidor; para outras pessoas, a conexão real não é estabelecida até que o aplicativo solicite uma transação específica.
Para obter a máxima eficiência, os aplicativos que usam os protocolos HTTP devem tentar minimizar as chamadas para internetConnect e evitar chamar essa função para cada transação solicitada pelo usuário. Uma maneira de fazer isso é manter um pequeno cache de identificadores retornado de InternetConnect; quando o usuário faz uma solicitação para um servidor acessado anteriormente, esse identificador de sessão ainda está disponível.
Depois que o aplicativo de chamada terminar de usar o identificador HINTERNET retornado por InternetConnect, ele deverá ser fechado usando a função InternetCloseHandle.
Exemplos de uso de internetconnect podem ser encontrados nos tópicos a seguir.
- manipulando de autenticação
- de aplicativo de exemplo assíncrono
Assim 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.
Nota
O cabeçalho wininet.h define InternetConnect como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | wininet.h |
biblioteca | Wininet.lib |
de DLL |
Wininet.dll |
Consulte também
habilitando de funcionalidade da Internet
do