Skip to main content

WdRemoteCopy

Copie des fichiers entre un PC local et un appareil distant. Introduit dans : RIT 0.0.8-Preview. CopyFrom pris en charge à partir de : RIT 0.0.13-preview. Consultez Historique des modifications.

Syntaxe

Paramètres

_In_z_ remoteDevice
Type : const char*
Le nom d’hôte ou l’adresse IP de l’appareil distant (p. ex., "192.168.1.100" ou "MyDevKit"). _In_z_ sourcePath
Type : const char*
Le chemin source à partir duquel copier (p. ex., "C:\\builds\\MyGame" lors d’une copie vers un appareil distant). Il s’agit d’un chemin local pour CopyTo et d’un chemin distant pour CopyFrom. _In_z_ destinationPath
Type : const char*
Le chemin de destination vers lequel copier. Pour CopyTo, il s’agit d’un chemin distant qui peut être absolu (p. ex., "D:\\Games\\MyGame") ou relatif à la racine commune (p. ex., "MyGame"). Pour CopyFrom, il s’agit d’un chemin local. _In_opt_ copyOptions
Type : const WdCopyOptions*
Facultatif. Spécifie la direction de la copie et l’alias de racine commune. Passez nullptr pour utiliser les paramètres par défaut (CopyTo, emplacement de racine commune par défaut si destinationPath est un chemin relatif). _In_opt_ searchOptions
Type : const WdCopySearchOptions*
Facultatif. Spécifie les modèles d’inclusion et d’exclusion de fichiers ainsi que les filtres d’attributs (p. ex., "*.exe;*.dll" pour copier uniquement les exécutables avec CopyTo). Pour CopyFrom, les modèles de noms ne restreignent pas la sélection des fichiers distants. Passez nullptr pour copier tous les fichiers. _In_opt_ statusCallbacks
Type : const WdCopyStatusCallbacks*
Facultatif. Spécifie les fonctions de rappel permettant de recevoir des mises à jour de progression et des messages de diagnostic pendant l’opération de copie. Passez nullptr pour ne recevoir aucun rappel. _In_opt_ cancellationHandle
Type : WdCancellationHandle
Facultatif. Un handle d’annulation créé par WdCreateCancellationHandle qui peut être passé à WdCancelRemoteCopy à partir d’un thread distinct pour annuler l’opération de copie. Passez nullptr si l’annulation n’est pas requise.

Valeur de retour

Type : HRESULT Retourne S_OK en cas de réussite; sinon, retourne un code d’erreur.

Codes d’erreur

Remarques

WdRemoteCopy est un appel synchrone et bloquant. Il ne retourne pas tant que tous les fichiers n’ont pas été copiés, que l’opération n’a pas été annulée au moyen de WdCancelRemoteCopy ou qu’une erreur ne s’est pas produite. Pour permettre l’annulation, créez un WdCancellationHandle au moyen de WdCreateCancellationHandle avant d’appeler WdRemoteCopy, puis passez-le à WdCancelRemoteCopy à partir d’un thread distinct. Une fois que WdRemoteCopy a retourné, fermez le handle avec WdCloseCancellationHandle. Utilisez WdCopyDirection::CopyTo pour envoyer des fichiers du PC local vers l’appareil distant, ou CopyFrom pour récupérer des fichiers de l’appareil distant vers le PC local. La direction par défaut est CopyTo. Le chemin distant est destinationPath pour CopyTo et sourcePath pour CopyFrom. Si ce chemin est absolu, le commonRootAlias de WdCopyOptions est ignoré. S’il est relatif, l’emplacement de racine commune par défaut est utilisé, sauf si un commonRootAlias est spécifié. Pour recevoir des mises à jour de progression pendant la copie, fournissez une structure WdCopyStatusCallbacks contenant des pointeurs de fonctions de rappel.
Un seul appel WdRemoteCopy peut être actif à la fois, quel que soit l’appareil cible ou le chemin de destination. Appeler WdRemoteCopy pendant qu’une autre copie est déjà en cours entraîne un comportement indéfini.
WdRemoteCopy ne réessaie pas automatiquement en cas d’échec. Si l’opération échoue en raison d’une interruption du réseau, l’appelant doit appeler de nouveau WdRemoteCopy. Les fichiers copiés avec succès avant l’échec demeurent à la destination; le comportement de copie delta garantit que seuls les fichiers incomplets ou manquants sont transférés de nouveau lors de la nouvelle tentative. Il n’y a aucun délai d’expiration; la copie se poursuit jusqu’à ce qu’elle soit terminée, qu’une erreur se produise ou qu’elle soit annulée.

Exemples

Exemple 1 : Copie de fichiers de base

Copie un dossier de build local vers un appareil distant en utilisant les paramètres par défaut. Tous les fichiers sont copiés sans filtrage, sans rapport de progression et sans prise en charge de l’annulation.

Exemple 2 : Copie filtrée avec rapport de progression

Copie uniquement des types de fichiers précis tout en ignorant les artefacts de débogage et les répertoires intermédiaires. Un rappel de progression affiche l’état du transfert en direct dans la console.

Historique des modifications

Configuration requise

Voir aussi

Last modified on October 6, 2026