VB.NET : Problème de copie : chemin d'accès trop long
Fermé
Anonyme209
Messages postés
678
Date d'inscription
samedi 6 octobre 2012
Statut
Membre
Dernière intervention
22 décembre 2020
-
17 juil. 2016 à 14:14
Utilisateur anonyme - 23 juil. 2016 à 21:27
Utilisateur anonyme - 23 juil. 2016 à 21:27
A voir également:
- Chemin d'accès trop long
- Vb.net download - Télécharger - Langages
- VB Editor - Télécharger - Langages
- Tp vb.net + correction pdf ✓ - Forum VB / VBA
- Exercices + corrigés de Visual Basic - Forum VB / VBA
- Vb.net comment ✓ - Forum Framework .NET
4 réponses
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
Modifié par cs_Le Pivert le 17/07/2016 à 14:38
Modifié par cs_Le Pivert le 17/07/2016 à 14:38
Bonjour,
Essaie ceci:
Pour plus de détail voir ici:
https://codes-sources.commentcamarche.net/source/view/101479/1414833
@+ Le Pivert
Essaie ceci:
Public Sub CopyFile(ByVal sourceFileName As String, ByVal destinationFileName As String) My.Computer.FileSystem.CopyFile(sourceFileName, destinationFileName, FileIO.UIOption.AllDialogs) End Sub
Pour plus de détail voir ici:
https://codes-sources.commentcamarche.net/source/view/101479/1414833
@+ Le Pivert
Utilisateur anonyme
18 juil. 2016 à 14:17
18 juil. 2016 à 14:17
Anonyme209
Messages postés
678
Date d'inscription
samedi 6 octobre 2012
Statut
Membre
Dernière intervention
22 décembre 2020
15
18 juil. 2016 à 15:51
18 juil. 2016 à 15:51
Je ne peux pas tester pour le moment (je le fais dès que possible), mais étant donné que l'exception PathTooLongException fait partie de la liste des exceptions que la fonction peut soulever (à l'instar des fonctions précédentes), cela a peu de (voire aucune) chances de fonctionner.
Il est inutile de me proposer toutes les fonctions de copie qui existent dans le but qu'une d'entre elles fonctionne.
Il est inutile de me proposer toutes les fonctions de copie qui existent dans le but qu'une d'entre elles fonctionne.
Utilisateur anonyme
21 juil. 2016 à 22:42
21 juil. 2016 à 22:42
Bonsoir
as tu pu determiner ce qui est trop long, le nombre de caractères, de sous-répertoire?
Est ce que comme tu le suggères dans ce message tes chemins font plus de 260 caractères?
as tu pu determiner ce qui est trop long, le nombre de caractères, de sous-répertoire?
Est ce que comme tu le suggères dans ce message tes chemins font plus de 260 caractères?
Anonyme209
Messages postés
678
Date d'inscription
samedi 6 octobre 2012
Statut
Membre
Dernière intervention
22 décembre 2020
15
22 juil. 2016 à 12:49
22 juil. 2016 à 12:49
Bonjour,
Je dirais les deux... Il y a beaucoup de sous-répertoires, dont le nom de chacun - ainsi que celui du fichier - est assez long.
Le chemin source a une longueur "autorisée" (244 caractères (je prends l'exemple d'un des fichiers qui ne veulent pas se copier)) mais le chemin de destination est trop long (277 caractères).
as tu pu determiner ce qui est trop long, le nombre de caractères, de sous-répertoire?
Je dirais les deux... Il y a beaucoup de sous-répertoires, dont le nom de chacun - ainsi que celui du fichier - est assez long.
Le chemin source a une longueur "autorisée" (244 caractères (je prends l'exemple d'un des fichiers qui ne veulent pas se copier)) mais le chemin de destination est trop long (277 caractères).
Utilisateur anonyme
21 juil. 2016 à 22:59
21 juil. 2016 à 22:59
Ici
https://stackoverflow.com/questions/8745215/best-way-to-resolve-file-path-too-long-exception
Une réponse propose la librairie Zeta Long Path.
Ça doit être plus simple que la réponse la mieux notée qui consiste à attribuer une lettre de lecteur à une partie du chemin, en commande dos, pour en réduire la taille.
https://stackoverflow.com/questions/8745215/best-way-to-resolve-file-path-too-long-exception
Une réponse propose la librairie Zeta Long Path.
Ça doit être plus simple que la réponse la mieux notée qui consiste à attribuer une lettre de lecteur à une partie du chemin, en commande dos, pour en réduire la taille.
Anonyme209
Messages postés
678
Date d'inscription
samedi 6 octobre 2012
Statut
Membre
Dernière intervention
22 décembre 2020
15
Modifié par Anonyme209 le 22/07/2016 à 14:38
Modifié par Anonyme209 le 22/07/2016 à 14:38
Cette librairie semble intéressante, cependant, je n'ai trouvé que des fonctions qui permettent d'accéder aux informations sur les fichiers (notamment la taille du fichier), mais aucune qui permette d'effectuer la copie.
Si tu connais cette librairie, pourrais-tu m'expliquer comment l'utiliser pour copier les fichiers ?
Merci de votre aide.
Si tu connais cette librairie, pourrais-tu m'expliquer comment l'utiliser pour copier les fichiers ?
Merci de votre aide.
Utilisateur anonyme
>
Anonyme209
Messages postés
678
Date d'inscription
samedi 6 octobre 2012
Statut
Membre
Dernière intervention
22 décembre 2020
22 juil. 2016 à 17:28
22 juil. 2016 à 17:28
Non je ne la connais pas.
Et je ne l'ai pas essayée.
Et je ne l'ai pas essayée.
18 juil. 2016 à 13:55
Cela ne fonctionne pas.
Voici mon code :
La liste "log" m'indique bien que les deux tentatives de copie échouent avec le même message d'erreur. Cependant, la deuxième tentative n'affiche aucune fenêtre de copie, contrairement à ce que l'argument " " est supposé faire. C'est à croire que la copie échoue avant que la fenêtre ait eu le temps de s'afficher.
Merci de votre aide.
18 juil. 2016 à 15:07
https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file?redirectedfrom=MSDN
@+
18 juil. 2016 à 15:54
Je suis au courant que la longueur limite pour un chemin d'accès est de 260 caractères. Ce n'est pas ce que je veux savoir.
Puisque Windows permet visiblement de stocker des fichiers dont la longueur du chemin d'accès dépasse la limite théorique, je pensais que l'on pouvait aussi outrepasser cette limitation en VB.NET.
Merci de votre aide.
18 juil. 2016 à 16:14
C'est peut-être la conception de ton application qui est en cause!
A voir
@+
19 juil. 2016 à 13:07
Je réponds à la fois au message de Whismeril et à celui de cs_Le Pivert.
J'ai créé une autre application, toute simple, composée seulement de deux zones de texte et de trois boutons (un pour chacune des trois fonctions proposées). Je tente de copier un des fichiers qui a causé problème à mon application de sauvegarde, et mon programme "test" retourne le même message d'erreur que précédemment, quelle que soit la fonction utilisée.
Je ne pense donc pas que ce soit la conception de mon application qui soit en cause (ce qui aurait été possible).
Merci de votre aide.