Méthode IBackgroundCopyCallback2 ::FileTransferred (bits3_0.h)
BITS appelle votre implémentation de la méthode FileTransferred lorsque BITS termine correctement le transfert d’un fichier.
Syntaxe
HRESULT FileTransferred(
[in] IBackgroundCopyJob *pJob,
[in] IBackgroundCopyFile *pFile
);
Paramètres
[in] pJob
Contient des informations liées au travail. Ne relâchez pas pJob ; BITS libère l’interface lorsque cette méthode retourne.
[in] pFile
Contient des informations relatives aux fichiers. Ne relâchez pas pFile ; BITS libère l’interface lorsque cette méthode retourne.
Valeur retournée
Cette méthode doit retourner S_OK ; sinon, si elle est négative, BITS continue d’appeler cette méthode jusqu’à ce que S_OK soit retourné. Pour des raisons de performances, vous devez limiter le nombre de fois où vous retournez une valeur autre que S_OK à quelques reprises. En guise d’alternative au retour d’un code d’erreur, envisagez de toujours retourner S_OK et de gérer l’erreur en interne. L’intervalle auquel cette méthode est appelée est arbitraire.
Remarques
En règle générale, vous n’utiliserez pas ce rappel, sauf si vous souhaitez valider le contenu du fichier téléchargé. La validation du fichier peut être importante pour vous si vous téléchargez du contenu qui pourrait être servi à vos homologues.
Pour obtenir le nom du fichier temporaire qui contient le contenu téléchargé, appelez la méthode IBackgroundCopyFile3 ::GetTemporaryName . Après avoir vérifié le contenu, appelez la méthode IBackgroundCopyFile3 ::SetValidationState pour indiquer à BITS si le contenu du fichier est valide. Si vous définissez l’état de validation sur FALSE et que le contenu provient du serveur d’origine, le travail passe à l’état d’erreur.
Si le contenu provient d’un homologue, BITS télécharge le fichier à partir du serveur d’origine. Le rappel est appelé à nouveau une fois le transfert de fichiers à partir du serveur d’origine terminé.
BITS 3.0 : Le rappel n’est pas appelé à nouveau une fois le transfert de fichiers à partir du serveur d’origine terminé.
Pour un travail, les rappels FileTransferred sont sérialisés. BITS ne distribue pas de rappel pour le fichier suivant dans le travail tant que le rappel actuel n’est pas retourné.
Les rappels FileTransferred sont distribués avant les rappels JobTransferred et JobError .
Le rappel FileTransferred est destiné aux travaux de téléchargement ou à la partie réponse d’un travail de chargement-réponse.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Serveur minimal pris en charge | Windows Server 2008 |
Plateforme cible | Windows |
En-tête | bits3_0.h (incluez Bits.h) |
Bibliothèque | Bits.lib |