Condividi tramite


Metodo IBackgroundCopyCallback3::FileRangesTransferred (bits10_1.h)

BITS chiama l'implementazione del metodo FileRangesTransferred quando è stato scaricato uno o più intervalli di file. Gli intervalli di file vengono aggiunti al processo usando il metodo IBackgroundCopyFile6::RequestFileRanges .

Sintassi

HRESULT FileRangesTransferred(
  IBackgroundCopyJob     *job,
  IBackgroundCopyFile    *file,
  DWORD                  rangeCount,
  const BG_FILE_RANGE [] ranges
);

Parametri

job

Oggetto IBackgroundCopyJob che contiene i metodi per l'accesso a proprietà, stato e informazioni sullo stato del processo. Non rilasciare pJob; BITS rilascia l'interfaccia quando il metodo restituisce.

file

Oggetto IBackgroundCopyFile che contiene informazioni sul file i cui intervalli sono stati modificati. Non rilasciare pFile; BITS rilascia l'interfaccia quando il metodo restituisce.

rangeCount

Numero di voci nella matrice di intervalli.

ranges

Matrice degli intervalli di file trasferiti dall'ultima chiamata a FileRangesTransferred o all'ultima chiamata al metodo IBackgroundCopyFile6::RequestFileRanges . Non liberare intervalli; BITS libera la memoria degli intervalli quando il metodo FileRangesTransferred restituisce.

Valore restituito

Questo metodo restituisce S_OK in caso di esito positivo; in caso contrario, restituisce un codice di errore.

Commenti

Gli intervalli restituiti in questo metodo potrebbero non corrispondere agli intervalli richiesti. Questo perché BITS non scarica due volte lo stesso intervallo di byte e perché BITS può segnalare quando viene scaricata una parte di un intervallo.

L'implementazione potrebbe non ricevere tutti gli eventi di modifica in condizioni di carico massimo delle risorse.

BITS genera un volume elevato di eventi; è consigliabile creare un timer e un polling per informazioni sullo stato e sullo stato o limitare l'uso di questo callback. Se si usa questo callback, mantenere breve l'implementazione. È necessario impostare la proprietà BITS_JOB_PROPERTY_MINIMUM_NOTIFICATION_INTERVAL sul valore più alto che soddisfa ancora le proprie esigenze; questo ridurrà il numero di callback non autorizzati.

Nota BITS supporta fino a quattro notifiche simultanee per utente. Se una o più applicazioni bloccano tutte e quattro le notifiche per un utente che restituisce, un'applicazione in esecuzione nello stesso utente non riceverà notifiche fino a quando non verrà restituita una o più notifiche di blocco.
 

Esempio

Per un esempio di come usare questa funzione, vedere il codice di esempio per l'interfaccia IBackgroundCopyCallback3 .

Requisiti

Requisito Valore
Client minimo supportato Windows 10 versione 1703 [solo app desktop]
Server minimo supportato Windows Server 2016 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione bits10_1.h (includere Bits.h)
Libreria Bits.lib

Vedi anche

IBackgroundCopyCallback3