Função InternetOpenUrlA (wininet.h)
Abre um recurso especificado por uma URL FTP ou HTTP completa.
Sintaxe
HINTERNET InternetOpenUrlA(
[in] HINTERNET hInternet,
[in] LPCSTR lpszUrl,
[in] LPCSTR lpszHeaders,
[in] DWORD dwHeadersLength,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
Parâmetros
[in] hInternet
O identificador para a sessão atual da Internet. O identificador deve ter sido retornado por uma chamada anterior para InternetOpen.
[in] lpszUrl
Um ponteiro para uma variável de cadeia de caracteres terminada em nulo que especifica a URL a ser iniciada a leitura. Há suporte apenas para URLs que começam com ftp:, http:ou https.
[in] lpszHeaders
Um ponteiro para uma cadeia de caracteres terminada em nulo que especifica os cabeçalhos a serem enviados ao servidor HTTP. Para obter mais informações, consulte a descrição do parâmetro lpszHeaders na função HttpSendRequest .
[in] dwHeadersLength
O tamanho dos cabeçalhos adicionais, em TCHARs. Se esse parâmetro for -1L e lpszHeaders não for NULL, lpszHeaders será considerado como ASCIIZ (terminação zero) e o comprimento será calculado.
[in] dwFlags
Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
Tenta usar um objeto InternetConnect existente se houver um com os mesmos atributos necessários para fazer a solicitação. Isso é útil apenas com operações FTP, pois o FTP é o único protocolo que normalmente executa várias operações durante a mesma sessão. A API WinINet armazena em cache um único identificador de conexão para cada identificador HINTERNET gerado pela InternetOpen. InternetOpenUrl usa esse sinalizador para conexões HTTP e FTP. |
|
Força um recarregamento se não houver tempo expirado e nenhum tempo LastModified retornado do servidor ao determinar se o item deve ser recarregado da rede. |
|
Desabilita a verificação de certificados baseados em SSL/PCT que são retornados do servidor em relação ao nome do host fornecido na solicitação. As funções WinINet usam uma marcar simples em relação a certificados comparando nomes de host correspondentes e regras de curinga simples. |
|
Desabilita a verificação de certificados baseados em SSL/PCT para datas de validade adequadas. |
|
Desabilita a detecção desse tipo especial de redirecionamento. Quando esse sinalizador é usado, o WinINet permite redirecionamentos de HTTPS para URLs HTTP de forma transparente. |
|
Desabilita a detecção desse tipo especial de redirecionamento. Quando esse sinalizador é usado, o WinINet permite redirecionamentos de HTTP para URLs HTTPS. |
|
Usa semântica keep alive, se disponível, para a conexão. Esse sinalizador é necessário para MSN (Microsoft Network), NTLM e outros tipos de autenticação. |
|
Faz com que um arquivo temporário seja criado se o arquivo não puder ser armazenado em cache. |
|
Não tenta a autenticação automaticamente. |
|
Não manipula automaticamente o redirecionamento em HttpSendRequest. |
|
Não adiciona a entidade retornada ao cache. |
|
Não adiciona automaticamente cabeçalhos de cookie a solicitações e não adiciona automaticamente cookies retornados ao banco de dados de cookie. |
|
Desabilita a caixa de diálogo de cookie. |
|
Usa semântica FTP passiva. InternetOpenUrl usa esse sinalizador para arquivos e diretórios FTP. |
|
Força a solicitação a ser resolvida pelo servidor de origem, mesmo que exista uma cópia armazenada em cache no proxy. |
|
Retorna os dados como uma estrutura WIN32_FIND_DATA ao recuperar informações de diretório FTP. Se esse sinalizador não for especificado ou se a chamada tiver sido feita por meio de um proxy CERN, InternetOpenUrl retornará a versão HTML do diretório.
Windows XP e Windows Server 2003 R2 e versões anteriores: Também retorna dados como uma estrutura GOPHER_FIND_DATA ao recuperar informações do diretório Gopher. |
|
Força um download do arquivo, objeto ou listagem de diretório solicitado do servidor de origem, não do cache. |
|
Recarrega recursos HTTP se o recurso tiver sido modificado desde a última vez em que foi baixado. Todos os recursos de FTP são recarregados.
Windows XP e Windows Server 2003 R2 e versões anteriores: Os recursos gopher também são recarregados. |
|
Usa semântica de transação segura. Isso se traduz no uso da SSL/PCT (Secure Sockets Layer/Private Communications Technology) e só é significativo em solicitações HTTP. |
[in] dwContext
Um ponteiro para uma variável que especifica o valor definido pelo aplicativo que é passado, juntamente com o identificador retornado, para qualquer função de retorno de chamada.
Retornar valor
Retorna um identificador válido para a URL se a conexão for estabelecida com êxito ou NULL se a conexão falhar. Para recuperar uma mensagem de erro específica, chame GetLastError. Para determinar por que o acesso ao serviço foi negado, chame InternetGetLastResponseInfo.
Comentários
Chame InternetCanonicalizeUrl primeiro se a URL que está sendo usada contiver uma URL relativa e uma URL base separada por espaços em branco.
Essa é uma função geral que um aplicativo pode usar para recuperar dados em qualquer um dos protocolos compatíveis com WinINet. Essa função é especialmente útil quando o aplicativo não precisa acessar as particularidades de um protocolo, mas requer apenas os dados correspondentes a uma URL. A função InternetOpenUrl analisa a cadeia de caracteres de URL, estabelece uma conexão com o servidor e se prepara para baixar os dados identificados pela URL. Em seguida, o aplicativo pode usar InternetReadFile (para arquivos) ou InternetFindNextFile (para diretórios) para recuperar os dados de URL. Não é necessário chamar InternetConnect antes de InternetOpenUrl.
Windows XP e Windows Server 2003 R2 e versões anteriores: InternetOpenUrl desabilita o Gopher em portas menores que 1024, exceto pela porta 70 — a porta Gopher padrão — e a porta 105 — normalmente usada para pesquisas de nomes da CSO (Central Services Organization).
Depois que o aplicativo de chamada terminar de usar o identificador HINTERNET retornado por InternetOpenUrl, ele deverá ser fechado usando a função InternetCloseHandle .
Nota Ao trabalhar no modo assíncrono (o parâmetro dwFlags de InternetOpen especifica INTERNET_FLAG_ASYNC) e o parâmetro dwContext é zero (INTERNET_NO_CALLBACK), a função de retorno de chamada definida com InternetSetStatusCallback no identificador de sessão não será invocada, no entanto, a chamada ainda será executada no modo assíncrono
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.
Observação
O cabeçalho wininet.h define InternetOpenUrl 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 |