WdDeleteRemoteFiles
Effectue au mieux la suppression de fichiers et de répertoires sur un appareil distant. Introduit dans : RIT 0.0.13-preview.Syntaxe
Paramètres
_In_z_ remoteDeviceType : const char* L’adresse ou le nom de l’appareil distant (UTF-8), par exemple
"192.168.1.100" ou "MyDevKit".
_In_z_ remoteFolderPathType : const char* Le chemin sur l’appareil distant à supprimer (UTF-8). Il peut s’agir d’un chemin de dossier, auquel cas son contenu est supprimé, ou du chemin d’un seul fichier, auquel cas seul ce fichier est supprimé. Si
remoteFolderPath est un chemin absolu, le commonRootAlias de WdDeleteOptions est ignoré.
_In_opt_ deleteOptionsType : const WdDeleteOptions* Facultatif. Spécifie l’alias de racine commune utilisé pour la résolution des chemins et indique si la suppression du dossier racine lui-même doit être tentée. Passez
nullptr pour utiliser l’emplacement de la racine commune par défaut lorsque remoteFolderPath est un chemin relatif, et pour conserver le dossier racine afin que seul son contenu soit supprimé. Lorsque remoteFolderPath se résout en un seul fichier, deleteRootFolder est ignoré.
_In_opt_ searchOptionsType : const WdDeleteSearchOptions* Facultatif. Spécifie des modèles d’inclusion et d’exclusion ainsi que des filtres d’attributs qui sélectionnent les fichiers et les répertoires à supprimer. Passez
nullptr pour inclure tous les éléments. Ces options s’appliquent uniquement lorsque remoteFolderPath se résout en un dossier; elles sont ignorées lorsqu’il se résout en un seul fichier.
_In_opt_ statusCallbacksType : const WdDeleteStatusCallbacks* Actuellement ignoré. Passez
nullptr; aucun rappel de progression ou d’erreur n’est invoqué.
_In_opt_ cancellationHandleType : WdCancellationHandle Facultatif. Un handle d’annulation créé par WdCreateCancellationHandle qui peut être passé à WdCancelRemoteDelete à partir d’un thread distinct pour arrêter l’attente du client. Passez
nullptr si l’annulation n’est pas nécessaire.
Valeur de retour
Type : HRESULT RetourneS_OK lorsque le point de terminaison signale une réussite ou que le client observe l’annulation; sinon, retourne un code d’erreur. S_OK ne garantit pas que chaque élément sélectionné a été supprimé. Pour obtenir la liste des codes d’erreur propres à l’API, y compris les causes premières et des conseils de dépannage, consultez Codes d’erreur de l’API XBOX PC Remote Iteration.
Remarques
WdDeleteRemoteFiles est un appel synchrone et bloquant. Il attend un résultat du point de terminaison, une erreur ou une annulation observée au moyen de WdCancelRemoteDelete. La suppression est effectuée au mieux : aucun résultat par élément n’est retourné, et les échecs de suppression de fichiers sont signalés uniquement dans les journaux du point de terminaison.
Pour activer l’annulation, créez un WdCancellationHandle à l’aide de WdCreateCancellationHandle avant d’appeler WdDeleteRemoteFiles, puis passez-le à WdCancelRemoteDelete à partir d’un thread distinct. Après le retour de WdDeleteRemoteFiles, fermez le handle avec WdCloseCancellationHandle.
L’annulation arrête l’attente du client, et non la suppression déjà commencée sur le point de terminaison. Lorsque l’annulation est observée, l’appel retourne S_OK sans confirmer que le point de terminaison a terminé.
Par défaut, seul le contenu de remoteFolderPath est supprimé et le dossier lui-même est conservé. Réglez deleteRootFolder de WdDeleteOptions à true pour tenter également de supprimer le dossier une fois son contenu supprimé. Cette suppression est effectuée au mieux et n’est tentée que si le dossier est vide; une suppression filtrée qui laisse des éléments conserve le dossier.
Quelle que soit la valeur de deleteRootFolder, l’opération tente également de supprimer les sous-répertoires vides qui satisfont aux filtres de répertoires, y compris les répertoires qui étaient déjà vides.
Si remoteFolderPath est un chemin absolu, le commonRootAlias de WdDeleteOptions est ignoré. Si remoteFolderPath est un chemin relatif, l’emplacement de la racine commune par défaut est utilisé, sauf si un commonRootAlias est spécifié.
[!WARNING] La suppression peut suivre les jonctions de répertoires et les liens symboliques de répertoires situés sousremoteFolderPathet supprimer des fichiers correspondants en dehors de ce répertoire. L’opération peut tout de même retournerS_OK; aucun résultat par élément ni aucune opération d’annulation des modifications ne sont fournis. Assurez-vous que la racine n’est pas elle-même un répertoire lié, et utilisezexcludeDirPatternpour exclure par leur nom les sous-répertoires liés connus.
