Skip to main content

WdRemoteCopy

Copia archivos entre un PC local y un dispositivo remoto.

Sintaxis

Parámetros

_In_z_ remoteDevice
Tipo: const char*
Nombre de host o dirección IP del dispositivo remoto (por ejemplo, "192.168.1.100" o "MyDevKit"). _In_z_ sourcePath
Tipo: const char*
Ruta de acceso de origen desde la que se copia (por ejemplo, "C:\\builds\\MyGame" al copiar a un dispositivo remoto). _In_z_ destinationPath
Tipo: const char*
Ruta de acceso de destino en la que se copia. Puede ser una ruta de acceso absoluta (por ejemplo, "D:\\Games\\MyGame") o una ruta de acceso relativa que se resuelve con respecto a la raíz común (por ejemplo, "MyGame"). _In_opt_ copyOptions
Tipo: const WdCopyOptions*
Opcional. Especifica la dirección de la copia y el alias de la raíz común. Pase nullptr para usar la configuración predeterminada (CopyTo, ubicación de raíz común predeterminada si destinationPath es una ruta de acceso relativa). _In_opt_ searchOptions
Tipo: const WdCopySearchOptions*
Opcional. Especifica los patrones de inclusión/exclusión de archivos y los filtros de atributos (por ejemplo, "*.exe;*.dll" para copiar solo los ejecutables). Pase nullptr para copiar todos los archivos. _In_opt_ statusCallbacks
Tipo: const WdCopyStatusCallbacks*
Opcional. Especifica las funciones de devolución de llamada para recibir actualizaciones de progreso y mensajes de diagnóstico durante la operación de copia. Pase nullptr para no recibir devoluciones de llamada. _In_opt_ cancellationHandle
Tipo: WdCancellationHandle
Opcional. Identificador de cancelación creado por WdCreateCancellationHandle que se puede pasar a WdCancelRemoteCopy desde un subproceso independiente para cancelar la operación de copia. Pase nullptr si no se necesita la cancelación.

Valor devuelto

Tipo: HRESULT Devuelve S_OK si se realiza correctamente; de lo contrario, devuelve un código de error.

Códigos de error

Comentarios

WdRemoteCopy es una llamada sincrónica de bloqueo. No devuelve un valor hasta que se hayan copiado todos los archivos, se cancele la operación mediante WdCancelRemoteCopy o se produzca un error. Para habilitar la cancelación, cree un WdCancellationHandle mediante WdCreateCancellationHandle antes de llamar a WdRemoteCopy y, a continuación, páselo a WdCancelRemoteCopy desde un subproceso independiente. Cuando WdRemoteCopy devuelva un valor, cierre el identificador con WdCloseCancellationHandle. La función admitirá la copia bidireccional; sin embargo, CopyFrom no está implementada actualmente y devolverá E_NOTIMPL si se usa. Use WdCopyDirection::CopyTo para enviar archivos desde el PC local al dispositivo remoto. La dirección predeterminada es CopyTo. Si destinationPath es una ruta de acceso absoluta, el commonRootAlias de WdCopyOptions se omite. Si destinationPath es una ruta de acceso relativa, se usa la ubicación de raíz común predeterminada, a menos que se especifique un commonRootAlias. Para recibir actualizaciones de progreso durante la copia, proporcione una estructura WdCopyStatusCallbacks con punteros a funciones de devolución de llamada.
Solo puede haber una llamada a WdRemoteCopy activa a la vez, independientemente del dispositivo de destino o de la ruta de acceso de destino. Llamar a WdRemoteCopy mientras hay otra copia en curso da lugar a un comportamiento indefinido.
WdRemoteCopy no reintenta automáticamente en caso de error. Si la operación falla debido a una interrupción de la red, el autor de la llamada debe volver a invocar a WdRemoteCopy. Los archivos que se copiaron correctamente antes del error permanecen en el destino: el comportamiento de copia diferencial garantiza que en el reintento solo se vuelvan a transferir los archivos incompletos o que falten. No hay tiempo de espera; la copia continúa hasta que se completa, se produce un error o se cancela.

Ejemplos

Ejemplo 1: Copia de archivos básica

Copia una carpeta de compilación local a un dispositivo remoto usando la configuración predeterminada. Se copian todos los archivos sin filtrado, informes de progreso ni compatibilidad con la cancelación.

Ejemplo 2: Copia filtrada con informes de progreso

Copia solo tipos de archivo específicos y omite los artefactos de depuración y los directorios intermedios. Una devolución de llamada de progreso imprime el estado de la transferencia en directo en la consola.

Requisitos

Consulte también

Última modificación el 28 de agosto de 2026