Partager via


Méthode IBackgroundCopyJob::Complete

Termine le travail et enregistre les fichiers transférés sur le client.

Syntaxe

HRESULT Complete();

Paramètres

Cette méthode n’a aucun paramètre.

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 dans leurs noms donnés.

Code de retour Description
S_OK
Tous les fichiers transférés avec succès.
DO_E_INVALID_STATE
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.

Notes

Tous les fichiers ont été transférés correctement si l’état du travail est BG_JOB_STATE_TRANSFERRED. Pour case activée 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 vers le client.

L’optimisation de la distribution conserve les travaux de moins de 30 jours uniquement. Tous les travaux plus anciens seront supprimés. L’optimisation de la distribution ne prend pas en charge le stratégie de groupe JobInactivityTimeout.

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é correctement transférés vers le client avant d’appeler cette méthode sont enregistrés. Par exemple, si vous appelez la méthode Complete alors que l’optimisation de la distribution traite le troisième des cinq fichiers, seuls les deux premiers fichiers sont enregistrés. Pour déterminer les fichiers qui ont été 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.

Le propriétaire du fichier est l’utilisateur qui a effectué l’appel. Par exemple, si un administrateur termine le travail de quelqu’un d’autre, l’administrateur n’est pas propriétaire du fichier.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 10, version 1709 [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server, version 1709 [applications de bureau uniquement]
En-tête
Deliveryoptimization.h
IDL
DeliveryOptimization.idl
Bibliothèque
Dosvc.lib
DLL
Dosvc.dll
IID
IID_IBackgroundCopyJob est défini comme 37668D37-507E-4160-9316-26306D150B12

Voir aussi

IBackgroundCopyJob

IBackgroundCopyJob::Cancel

IBackgroundCopyJob::GetState