Compartir a través de


Método IBackgroundCopyJob::Complete

Finaliza el trabajo y guarda los archivos transferidos en el cliente.

Sintaxis

HRESULT Complete();

Parámetros

Este método no tiene parámetros.

Valor devuelto

Este método devuelve los siguientes valores HRESULT . El método también puede devolver errores relacionados con el cambio de nombre de las copias temporales de los archivos transferidos a sus nombres especificados.

Código devuelto Descripción
S_OK
Todos los archivos se transfirieron correctamente.
DO_E_INVALID_STATE
En el caso de las descargas, el estado del trabajo no puede ser BG_JOB_STATE_CANCELLED ni BG_JOB_STATE_ACKNOWLEDGED.
En el caso de las cargas, el estado del trabajo debe ser BG_JOB_STATE_TRANSFERRED.

Comentarios

Todos los archivos se han transferido correctamente si el estado del trabajo es BG_JOB_STATE_TRANSFERRED. Para comprobar el estado del trabajo, llame al método IBackgroundCopyJob::GetState . También puede implementar la interfaz IBackgroundCopyCallback para recibir una notificación cuando todos los archivos se hayan transferido al cliente.

Optimización de distribución conserva los trabajos que solo son de menos de 30 días. Se quitarán todos los trabajos anteriores. La optimización de distribución no admite el directiva de grupo JobInactivityTimeout.

Para los trabajos de descarga, puede llamar al método Complete en cualquier momento durante el proceso de transferencia; sin embargo, solo se guardan los archivos que se han transferido correctamente al cliente antes de llamar a este método. Por ejemplo, si llama al método Complete mientras optimización de distribución está procesando el tercero de cinco archivos, solo se guardan los dos primeros archivos. Para determinar qué archivos se han transferido, llame al método IBackgroundCopyFile::GetProgress y compare el miembro BytesTransferred con el miembro BytesTotal de la estructura BG_FILE_PROGRESS .

En el caso de los trabajos de carga, solo puede llamar al método Complete cuando el estado del trabajo es BG_JOB_STATE_TRANSFERRED.

El propietario del archivo es el usuario que realizó la llamada. Por ejemplo, si un administrador completa el trabajo de otra persona, el administrador no el propietario del trabajo posee el archivo.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 10, versión 1709 [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server, versión 1709 [solo aplicaciones de escritorio]
Encabezado
Deliveryoptimization.h
IDL
DeliveryOptimization.idl
Biblioteca
Dosvc.lib
Archivo DLL
Dosvc.dll
IID
IID_IBackgroundCopyJob se define como 37668D37-507E-4160-9316-26306D150B12

Consulte también

IBackgroundCopyJob

IBackgroundCopyJob::Cancel

IBackgroundCopyJob::GetState