J’utilise Python mais je pense que le même problème existe en C #.
Je voudrais pouvoir supporter des chemins étendus (chemins avec len> 260 qui sont représentés comme //? / C: / blah / blah). Il semble que le moyen standard de déplacer les fichiers vers la corbeille soit via SHFileOperationW ou SHFileOperation.
Dans python, la bibliothèque utile xplatform, move2trash, utilise SHFileOperationW. Quelques articles sur C # disent utiliser la même chose.
Le problème avec SHFileOperationW est qu’il ne prend pas en charge les chemins étendus. Ceci est une limitation générale des outils SH.
Quelqu’un at-il des astuces pour gérer la corbeille et les chemins étendus?
liens de référence: version C #, version Python
Une recherche rapide de “PathTooLongException” en révèle quelques-unes si vous souhaitez examiner certaines solutions C #. Il se peut que vous puissiez récupérer le “nom abrégé” et l’utiliser pour le déplacer. En outre, vous pouvez regarder et voir comment ils ont géré cette bibliothèque C # avec une solution de contournement à http://bcl.codeplex.com/wikipage?title=Long%20Path
Vous ne le faites pas. Il n’est pas possible de placer un fichier dans la corbeille dont le chemin dépasse 259 caractères.