Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Termine le travail et enregistre les fichiers transférés sur le client.
Syntaxe
HRESULT Complete();
Valeur retournée
Cette méthode retourne les valeurs HRESULT suivantes. La méthode peut également retourner des erreurs liées au changement de nom des copies temporaires des fichiers transférés vers leurs noms donnés.
| Code de retour | Descriptif |
|---|---|
|
Tous les fichiers transférés avec succès. |
|
Sous-ensemble des fichiers transférés avec succès. |
|
Le travail a été terminé avec succès ; toutefois, le service n’a pas pu supprimer les fichiers temporaires associés au travail. |
|
Pour les téléchargements, l’état du travail ne peut pas être BG_JOB_STATE_CANCELLED ou BG_JOB_STATE_ACKNOWLEDGED.
Pour les chargements, l’état du travail doit être BG_JOB_STATE_TRANSFERRED. |
Remarques
Les fichiers de téléchargement ne sont pas disponibles tant que vous n’appelez pas la méthode Complete . Appelez la méthode Complete une fois que BITS a correctement transféré les fichiers. La méthode renomme les fichiers de téléchargement temporaires en noms de destination finals et supprime le travail de la file d’attente. Notez que BITS renomme le fichier de chargement temporaire lorsque le serveur reçoit le dernier fragment, c’est pourquoi les travaux de téléchargement nécessitent une connectivité réseau et des travaux de chargement ne le font pas.
Tous les fichiers ont été transférés correctement si l’état du travail est BG_JOB_STATE_TRANSFERRED. Pour vérifier l’état du travail, appelez la méthode IBackgroundCopyJob ::GetState . Vous pouvez également implémenter l’interface IBackgroundCopyCallback pour recevoir une notification lorsque tous les fichiers ont été transférés au client.
Si vous n’appelez pas la méthode Complete ou la méthode IBackgroundCopyJob ::Cancel dans les 90 jours (stratégie de groupe JobInactivityTimeout par défaut), le service annule le travail. Si le service annule le travail, les fichiers téléchargés et le fichier de réponse ne sont pas disponibles pour le client ; l’annulation du travail n’affecte pas les fichiers qui ont été correctement chargés.
BITS supprime le travail de la file d’attente de transfert si HRESULT est S_OK ou BG_S_PARTIAL_COMPLETE. Le travail reste dans la file d’attente de transfert si BITS n’a pas pu renommer tous les fichiers temporaires. Les fichiers qui ont été renommés avec succès sont disponibles pour l’utilisateur. Le travail reste dans la file d’attente (l’état est BG_JOB_STATE_TRANSFERRED) jusqu’à ce que l’application puisse résoudre le problème et appelle à nouveau la méthode Complete ou la méthode IBackgroundCopyJob ::Cancel pour annuler le travail. Pour déterminer les fichiers qui n’ont pas été renommés pour les travaux de téléchargement, consultez le membre Terminé de la structure BG_FILE_PROGRESS .
Pour les travaux de téléchargement, vous pouvez appeler la méthode Complete à tout moment pendant le processus de transfert ; toutefois, seuls les fichiers qui ont été transférés avec succès au client avant d’appeler cette méthode sont enregistrés. Par exemple, si vous appelez la méthode Complete pendant que BITS traite le troisième des cinq fichiers, seuls les deux premiers fichiers sont enregistrés. Pour déterminer les fichiers transférés, appelez la méthode IBackgroundCopyFile ::GetProgress et comparez le membre BytesTransferred au membre BytesTotal de la structure BG_FILE_PROGRESS .
Pour les travaux de chargement, vous pouvez appeler la méthode Complete uniquement lorsque l’état du travail est BG_JOB_STATE_TRANSFERRED.
BITS ne garantit pas l’intégrité des fichiers transférés contre les intrusions tierces. Les clients peuvent implémenter des vérifications d’intégrité pour valider les fichiers transférés après avoir appelé la méthode Complete .
Le propriétaire du fichier est l’utilisateur qui a effectué l’appel. Par exemple, si un administrateur termine le travail d’une autre personne, l’administrateur, et non le propriétaire du travail, possède le fichier.
BITS 1.2 et versions antérieures : Le propriétaire du fichier est le propriétaire du travail, quel que soit l’appelant la méthode Complete .
Spécifications
| Requirement | Valeur |
|---|---|
| Client minimum requis | Windows XP |
| Serveur minimal pris en charge | Windows Server 2003 |
| plateforme cible | Fenêtres |
| Header | bits.h |
| Library | Bits.lib |
| DLL | QmgrPrxy.dll |
Voir aussi
Fin et annulation d’un travail