Copie d'une racine vers un dossier erreur

codevisualB Messages postés 7 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 26 septembre 2017 - 25 sept. 2017 à 22:52
Whismeril Messages postés 19102 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 25 juillet 2024 - 27 sept. 2017 à 06:59
Bonjour,

Voici mon problème quand je veux copier les dossiers d'une racine ex: (F:\) vers un autre dossier cela ne fonctionne pas.

Voici le code :

My.Computer.FileSystem.CopyDirectory("J:\", "E:\Bureau\Dossier-Photo", True)

Voici l'erreur:

Une exception non gérée du type 'System.IO.IOException' s'est produite dans Microsoft.VisualBasic.dll

Informations supplémentaires : Impossible d'achever l'opération, car le répertoire est un répertoire racine : 'J:\'.

j'ai vu qu'il avait moyen de dire à Visual basique d'accepter les racines avec IOException.

seriez-vous m’aidez à résoudre ce problème

Merci

4 réponses

vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024 169
26 sept. 2017 à 00:28
Bonjour

Tu dis : j'ai vu qu'il avait moyen de dire à Visual basique d'accepter les racines avec IOException.

Et tu as vu cela où ?
0
codevisualB Messages postés 7 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 26 septembre 2017
26 sept. 2017 à 00:32
Public Class IOException
Inherits InnerException

InnerException = l'instance Exception qui a provoqué l'exception actuelle.

j'ai peut-être mal compris ?
0
vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024 169
Modifié le 26 sept. 2017 à 00:46
bonsoir !
Cette classe se produit en cas d'erreur dans le programme
L'erreur actuelle est le fait que le répertoire source est un répertoire racine !
Il n'est nullement marqué que Visual Basic peut dans ce cas accepter un répertoire racine ! Et VB 6 ne l'acceptera jamais !
C'est comme la division par 0 : VB ne l'accepte pas et déclenche une exception !

Pour ton problème il faut que tes photos dans le répertoire source ne soit pas dans J:\ mais dans J:\Photos par exemple . .
O
0
codevisualB Messages postés 7 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 26 septembre 2017
26 sept. 2017 à 01:13
serait-il possible de copier une racine via le shell ?
0
codevisualB Messages postés 7 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 26 septembre 2017
26 sept. 2017 à 01:23
he non pas par un Shell car je dois intégrer un label dans la commande et cela n'ira pas via un shell
0
vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024 169 > codevisualB Messages postés 7 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 26 septembre 2017
26 sept. 2017 à 01:25
aucune idée !
Je pratique plutôt VB Net depuis 10 ans environ maintenant !
J'ai abandonné VB 6 et tout ce qui va avec !
0
codevisualB Messages postés 7 Date d'inscription lundi 25 septembre 2017 Statut Membre Dernière intervention 26 septembre 2017
26 sept. 2017 à 01:27
pour info ; Call Shell("cmd /c copy J:\dossier E:\Bureau\photo")
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 209
26 sept. 2017 à 08:35
Bonjour,

Forum Visual Basic Visual Basic 6

vraiment ?
0
vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024 169
26 sept. 2017 à 11:26
Bonjour ucfoutu
Cela fait plaisir d'avoir de tes nouvelles et de voir que ta perspicacité est toujours aussi bonne !

Pour codevisualB : tu ne serais pas en VB Net parfois ?
0
Whismeril Messages postés 19102 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 25 juillet 2024 661
26 sept. 2017 à 18:02
Bonjour à tous les 2.
Dès le premier message il ne fait aucun doute que c'est du VB.net.
La bonne question est "encore un qui ne sait pas avec quel langage il travaille?"
0
Whismeril Messages postés 19102 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 25 juillet 2024 661
26 sept. 2017 à 20:12
Sans aller jusqu'à utiliser les API windows, tu peux faire une boucle qui copie chaque éléments de la racine.

            For Each fichier As String In Directory.GetFiles("J:\")
                My.Computer.FileSystem.CopyDirectory(fichier, "E:\Bureau\Dossier-Photo", True) 
            Next fichier
0
vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024 169
26 sept. 2017 à 22:57
0
Whismeril Messages postés 19102 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 25 juillet 2024 661
26 sept. 2017 à 23:48
aussi
0
vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024 169 > Whismeril Messages postés 19102 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 25 juillet 2024
27 sept. 2017 à 04:07
bonjour Whis !
Petit souci avec le code que tu proposes :
 For Each fichier As String In Directory.GetFiles("J:\")
My.Computer.FileSystem.CopyDirectory(fichier, "E:\Bureau\Dossier-Photo", True)
Next fichier


Ce code ne copie que les répertoires contenus dans le lecteur racine J:\
Il ne copie pas les fichiers contenus dans la racine et provoque une exception
0
Whismeril Messages postés 19102 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 25 juillet 2024 661 > vb95 Messages postés 3489 Date d'inscription samedi 11 janvier 2014 Statut Contributeur Dernière intervention 25 juillet 2024
27 sept. 2017 à 06:59
Ha j'avoue avoie tapé de tête sans tester.
0
Rejoignez-nous