Método IBackgroundCopyCallback2::FileTransferred (bits3_0.h)
O BITS chama a implementação do método FileTransferred quando o BITS termina com êxito a transferência de um arquivo.
Sintaxe
HRESULT FileTransferred(
[in] IBackgroundCopyJob *pJob,
[in] IBackgroundCopyFile *pFile
);
Parâmetros
[in] pJob
Contém informações relacionadas ao trabalho. Não liberar pJob; O BITS libera a interface quando esse método retorna.
[in] pFile
Contém informações relacionadas ao arquivo. Não liberar pFile; O BITS libera a interface quando esse método retorna.
Retornar valor
Esse método deve retornar S_OK; caso contrário, se negativo, o BITS continuará a chamar esse método até que S_OK seja retornado. Por motivos de desempenho, você deve limitar o número de vezes que retorna um valor diferente de S_OK para algumas vezes. Como alternativa para retornar um código de erro, considere sempre retornar S_OK e lidar com o erro internamente. O intervalo no qual esse método é chamado é arbitrário.
Comentários
Normalmente, você não usaria esse retorno de chamada, a menos que queira validar o conteúdo do arquivo que foi baixado. Validar o arquivo pode ser importante para você se você estiver baixando conteúdo que pode ser servido aos pares.
Para obter o nome do arquivo temporário que contém o conteúdo baixado, chame o método IBackgroundCopyFile3::GetTemporaryName . Depois de verificar o conteúdo, chame o método IBackgroundCopyFile3::SetValidationState para indicar ao BITS se o conteúdo do arquivo for válido. Se você definir o estado de validação como FALSE e o conteúdo for do servidor de origem, o trabalho passará para o estado de erro.
Se o conteúdo for de um par, o BITS baixará o arquivo do servidor de origem. O retorno de chamada é chamado novamente após a conclusão da transferência de arquivo do servidor de origem.
BITS 3.0: O retorno de chamada não é chamado novamente após a conclusão da transferência de arquivo do servidor de origem.
Para um trabalho, os retornos de chamada FileTransferred são serializados. O BITS não enviará um retorno de chamada para o próximo arquivo no trabalho até que o retorno de chamada atual retorne com êxito.
Os retornos de chamada FileTransferred são enviados antes dos retornos de chamada JobTransferred e JobError.
O retorno de chamada FileTransferred é para trabalhos de download ou a parte de resposta de um trabalho de upload-reply.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista |
Servidor mínimo com suporte | Windows Server 2008 |
Plataforma de Destino | Windows |
Cabeçalho | bits3_0.h (inclua Bits.h) |
Biblioteca | Bits.lib |