VB.net lister tout dossiers/fichiers d'un DD

Résolu
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   -  
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je code en vb.net et j'aimerai lister tout les fichiers d'une partition exemple "C:\" , voici une capture contenant le code , la form et l'erreur :

https://i.imgur.com/yGCt9.jpg

Merci d'avance pour votre aide :)



A voir également:

6 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Aller, je pense que tu a asser chercher :-)
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Call LireRep("C:\")
    End Sub

    Private Sub LireRep(ByVal Repertoire As String)
        Dim Chemin As String
        Dim i As Int16
        Dim Exclure() As String = {"$", "WINDOWS", "SYSTEM", "PROGRAM", "USER", "DRIVER", "TOOLS", "BOOT"}
        Dim SousRep As String() = Directory.GetDirectories(Repertoire)

        For Each sRep As String In SousRep
            Chemin = Path.GetFileName(sRep).ToUpper
            'Debug.Print(Chemin)
            For i = 0 To UBound(Exclure)
                If Microsoft.VisualBasic.Left(Chemin, Len(Exclure(i))) = Exclure(i) Then Exit For
            Next
            If i > UBound(Exclure) Then
                Try
                    Dim FichierS As String() = Directory.GetFiles(sRep)
                    For Each Fi As String In FichierS
                        ListBox1.Items.Add(Fi)
                    Next
                    If sRep.Length > 0 Then
                        LireRep(sRep)
                    End If
                Catch ex As Exception
                    'Debug.Print(Repertoire)
                End Try
            End If
        Next
    End Sub

J'ai exclu certain répertoires sinon ça prend des plombes pour lister tout les fichiers.
A+
5
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   26
 
Salut ,
merci beaucoup pour tes efforts , je vais essayer ça .
0
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   26
 
XD c'est 3 fois mieux que le code qui m'a pris 3H a faire dernièrement (et la je l'ai jeté a la poubelle ) , c'est exactement ce que je voulais , 1000merci lermite222 ! , problème résolue .
0
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   26
 
UP ! personne ne peut répondre ?! .... bizzard
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Beh on est bénévole et ont répond quand ont en a le temps ou l'envie non ?

La fonction devrait .. fonctionner !
Quel est l'erreur et sur quel ligne ?
Je pense plutôt que ce qu'il manque ce sont les fichiers system ?
Pour avoir accès à certain fichier il faut opérer avec le jeton Administrateur.
Si c'est ça.. ferme la solution.
Ouvre VB en mode administrateur (clic droit sur l'icône >> Ouvrir en tant qu'admin)
et relance la procédure pour voir.
A+
0
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   26
 
"Ouvre VB en mode administrateur (clic droit sur l'icône >> Ouvrir en tant qu'admin)
et relance la procédure pour voir. "
j'ai essayé ça , ça a pas marché :/ .
"Quel est l'erreur et sur quel ligne ? "
tout est dans la capture , y'a pas d'erreur de syntax .

Si t'a VS2010 et que t'es sous win7 , essaye de faire fonctionner le code ^^
Merci pour ta réponse ^^
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Correction..
        Try
            Dim Repertoires As String() = Directory.GetDirectories("C:\")
            For Each Rep As String In Repertoires
                Me.ListBox1.Items.Add(Path.GetFileName(Rep))
            Next
        Catch ex As Exception
            Stop
        End Try
0
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   26
 
mais je veut lister tout les fichiers du disque dur y compris ceux qui sont dans les sous dossiers , aussi je veut afficher C:\..etc , ton code ne permet pas de l'afficher :/ .

Merci beacoup pour ton aide ^^
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Hola.. faudrait mieux t'expliquer, j'ai répondu à ta demande..
voici une capture contenant le code , la form et l'erreur :
Comme tu avais des exceptions j'ai penser que c'était cela l'erreur que tu voulais éliminer. !!
Dans le code tu ne te préoccupe pas du tout des sous répertoires ni des fichiers.
Et ma boule de cristal est cassée !!

Ta réponse..
mais je veut lister tout les fichiers du disque dur y compris ceux qui sont dans les sous dossiers , aussi je veut afficher C:\..etc , ton code ne permet pas de l'afficher :/ .
Mais le tien non plus, tu veux un code tout cuit ?
Piste ?

Dim FichS As String() = Directory.GetFiles(Rep)

et lister FichS avec for Each comme pour les Rep
Pour lire tout les sous-répertoires il te faut faire une sub récursive, idem pour lire les fichiers.

Remarques:
Tu va tout mettre dans une ListBox ?? tu n'aura aucune hiérarchie ??, pour s'y retrouver comment tu va faire ?
Il serait plus judicieux d'utiliser une TreeView pour les répertoires et une listbox pour les fichiers. Un peu comme l'explorateur.
Je doit encore avoir un de mes projets du début qui affiche tout les répertoires dans une TreeView il fonctionnait mais j'ai laisser tomber parce que j'employais encore le FileSystemObject qui est beaucoup plus lent.
Si tu veux je peu te le passer pour les exemples sur la TreeView.

Tu dis..
0
relax. Messages postés 380 Date d'inscription   Statut Membre Dernière intervention   26
 
-xD pas la peine de s'enerver , je ne veut qu'être guidé pas de coder a ma place .

na c'est pas pour etre vue , c'est pour que je calcule chaque hash md5 des fichier , pour ça je doit avec leurs emplacement .
-ton projet il affiche tout les fichiers du disque dure ?
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Je m'énerve pas, la preuve le temps que j'ai mis pour rédiger la réponse.
Mais ça commence..
Tu a essayé avec une fonction récursive et la piste que je t'ai donner plus haut ?
Si ça va vraiment pas tu dis, je te montrerais.
0