Share via


Metodo IBackgroundCopyCallback2::FileTransferred (bits3_0.h)

BITS chiama l'implementazione del metodo FileTransferred quando BITS completa correttamente il trasferimento di un file.

Sintassi

HRESULT FileTransferred(
  [in] IBackgroundCopyJob  *pJob,
  [in] IBackgroundCopyFile *pFile
);

Parametri

[in] pJob

Contiene informazioni correlate al processo. Non rilasciare pJob; BITS rilascia l'interfaccia quando termina questo metodo.

[in] pFile

Contiene informazioni relative ai file. Non rilasciare pFile; BITS rilascia l'interfaccia quando termina questo metodo.

Valore restituito

Questo metodo deve restituire S_OK; in caso contrario, bitS continua a chiamare questo metodo fino a quando non viene restituito S_OK. Per motivi di prestazioni, è consigliabile limitare il numero di volte in cui si restituisce un valore diverso da S_OK a poche volte. In alternativa alla restituzione di un codice di errore, è consigliabile restituire sempre S_OK e gestire internamente l'errore. L'intervallo in cui viene chiamato questo metodo è arbitrario.

Commenti

In genere, non si userebbe questo callback a meno che non si voglia convalidare il contenuto del file scaricato. La convalida del file può essere importante se si scarica contenuto che potrebbe essere servito ai peer.

Per ottenere il nome del file temporaneo contenente il contenuto scaricato, chiamare il metodo IBackgroundCopyFile3::GetTemporaryName . Dopo aver verificato il contenuto, chiamare il metodo IBackgroundCopyFile3::SetValidationState per indicare a BITS se il contenuto del file è valido. Se si imposta lo stato di convalida su FALSE e il contenuto proviene dal server di origine, il processo passa allo stato di errore.

Se il contenuto proviene da un peer, BITS scarica il file dal server di origine. Il callback viene chiamato di nuovo al termine del trasferimento del file dal server di origine.

BITS 3.0: Il callback non viene chiamato di nuovo al termine del trasferimento del file dal server di origine.

Per un processo, i callback FileTransferred vengono serializzati. BITS non invierà un callback per il file successivo nel processo finché il callback corrente non viene restituito correttamente.

I callback FileTransferred vengono inviati prima dei callback JobTransferred e JobError.

Il callback FileTransferred è per i processi di download o la parte di risposta di un processo upload-reply.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione bits3_0.h (include Bits.h)
Libreria Bits.lib

Vedi anche

IBackgroundCopyCallback

IBackgroundCopyCallback2