Compartilhar via


Função InternetSetStatusCallbackW (wininet.h)

A função InternetSetStatusCallback configura uma função de retorno de chamada que as funções WinINet podem chamar à medida que o progresso é feito durante uma operação.

Sintaxe

INTERNET_STATUS_CALLBACK InternetSetStatusCallbackW(
  HINTERNET                hInternet,
  INTERNET_STATUS_CALLBACK lpfnInternetCallback
);

Parâmetros

hInternet

O identificador para o qual o retorno de chamada está definido.

lpfnInternetCallback

Um ponteiro para a função de retorno de chamada para chamar quando o progresso for feito ou NULL para remover a função de retorno de chamada existente. Para obter mais informações sobre a função de retorno de chamada, consulte InternetStatusCallback.

Valor de retorno

Retorna a função de retorno de chamada de status definida anteriormente se bem-sucedida, NULL se não houver nenhuma função de retorno de chamada de status definida anteriormente ou INTERNET_INVALID_STATUS_CALLBACK se a função de retorno de chamada não for válida.

Observações

As funções síncronas e assíncronas usam a função de retorno de chamada para indicar o progresso da solicitação, como resolver um nome, conectar-se a um servidor e assim por diante. A função de retorno de chamada é necessária para uma operação assíncrona. A solicitação assíncrona retornará ao aplicativo com INTERNET_STATUS_REQUEST_COMPLETE para indicar que a solicitação foi concluída.

Uma função de retorno de chamada pode ser definida em qualquer identificador e herdada por identificadores derivados. Uma função de retorno de chamada pode ser alterada usando InternetSetStatusCallback, desde que não haja solicitações pendentes que precisem usar o valor de retorno de chamada anterior. No entanto, observe que alterar a função de retorno de chamada em um identificador não altera os retornos de chamada em identificadores derivados, como os retornados por InternetConnect. Você deve alterar a função de retorno de chamada em cada nível.

Muitas das funções WinINet executam várias operações na rede. Cada operação pode levar tempo para ser concluída e cada uma pode falhar.

Às vezes, é desejável exibir informações de status durante uma operação de longo prazo. Você pode exibir informações de status configurando uma função de retorno de chamada de status da Internet que não pode ser removida desde que quaisquer retornos de chamada ou quaisquer funções assíncronas estejam pendentes.

Depois de iniciar InternetSetStatusCallback, a função de retorno de chamada pode ser acessada de dentro de qualquer função WinINet para monitorar operações de rede com uso intensivo de tempo.

Observação A função de retorno de chamada especificada no parâmetro lpfnInternetCallback não será chamada em operações assíncronas para o identificador de solicitação quando o dwContext parâmetro de HttpOpenRequest é definido como zero (INTERNET_NO_CALLBACK) ou o identificador de conexão quando o identificador dwContext de internetconnect está definido como zero (INTERNET_NO_CALLBACK).

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.

Observaçã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 ou serviços de servidor, use do Microsoft Windows HTTP Services (WinHTTP).
 

Nota

O cabeçalho wininet.h define InternetSetStatusCallback 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
cabeçalho wininet.h

Consulte também

funções comuns

InternetStatusCallback

do WinINet Functions