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

Confira também

IBackgroundCopyCallback

IBackgroundCopyCallback2