begin process at 2012 02 14 06:14:08
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichier / Disque

 > EXPLOREDOSSIER : AFFICHER LES FICHIERS DANS UN DOSSIER, ET ÉVENTUELLEMENT SES SOUS-DOSSIERS

EXPLOREDOSSIER : AFFICHER LES FICHIERS DANS UN DOSSIER, ET ÉVENTUELLEMENT SES SOUS-DOSSIERS


 Information sur la source

Note :
6,75 / 10 - par 4 personnes
6,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fichier / Disque Niveau :Débutant Date de création :09/02/2003 Date de mise à jour :09/02/2003 20:31:31 Vu / téléchargé :4 471 / 469

Auteur : Houzefa

Ecrire un message privé
Site perso
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Analyse des sous-dossiers au choix.
Utile pour avoir une liste rapide des fichiers d'un dossier. Perso, je m'en sert souvent.

Source

  • Dim Dossier_choisi As String
  • Private Type BrowseInfo
  • hWndOwner As Long
  • pIDLRoot As Long
  • pszDisplayName As Long
  • lpszTitle As Long
  • ulFlags As Long
  • lpfnCallback As Long
  • lParam As Long
  • iImage As Long
  • End Type
  • Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
  • Private Declare Function lstrcat Lib "kernel32" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
  • Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
  • Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
  • Private Sub ecrire(A_ecrire As String, Optional Gras As Boolean, Optional Couleur As Long)
  • Etat.SelStart = Len(Etat)
  • Etat.SelBold = Gras
  • If Not (IsMissing(Couleur)) Then
  • Etat.SelColor = Couleur
  • Else
  • Etat.SelColor = vbBlack
  • End If
  • Etat.SelText = A_ecrire & vbNewLine
  • Etat.SelBold = False
  • Etat.SelColor = vbBlack
  • End Sub
  • Public Function explorer(ByVal Chemin As String)
  • On Error Resume Next
  • Dim id_1 As Integer
  • Dim id_2 As Integer
  • Dim id_3 As Integer
  • Dim ids() As String
  • Dim dossier_courant As String
  • If Dir(Chemin, vbDirectory) = "" Then
  • Exit Function
  • End If
  • dossier_courant = Dir(Chemin, vbDirectory)
  • Do While dossier_courant <> ""
  • If dossier_courant <> "." And dossier_courant <> ".." Then
  • If (GetAttr(Chemin & dossier_courant) And vbDirectory) <> 0 Then
  • id_1 = id_1 + 1
  • End If
  • End If
  • dossier_courant = Dir
  • Loop
  • ReDim ids(id_1)
  • dossier_courant = Dir(Chemin, vbDirectory)
  • Do While dossier_courant <> ""
  • If dossier_courant <> "." And dossier_courant <> ".." Then
  • If (GetAttr(Chemin & dossier_courant) And vbDirectory) <> 0 Then
  • id_2 = id_2 + 1
  • ids(id_2) = dossier_courant
  • If Afficher_sous_dossiers.Value <> 0 Then
  • ecrire dossier_courant, True
  • End If
  • Else
  • ecrire dossier_courant
  • End If
  • End If
  • dossier_courant = Dir
  • Loop
  • For id_3 = 1 To id_1
  • If Sous_dossiers.Value <> 0 Then
  • explorer Chemin & ids(id_3) & "\"
  • End If
  • Next
  • End Function
  • Private Sub Parcourir_Click()
  • Dim Rien As Integer
  • Dim Liste As Long
  • Dim Resultat As String
  • Dim Browse_info As BrowseInfo
  • With Browse_info
  • .hWndOwner = Me.hWnd
  • .lpszTitle = lstrcat("Choix du dossier à analyser", "")
  • .ulFlags = 1
  • End With
  • Liste = SHBrowseForFolder(Browse_info)
  • If Liste Then
  • Resultat = String$(260, 0)
  • SHGetPathFromIDList Liste, Resultat
  • CoTaskMemFree Liste
  • Rien = InStr(Resultat, vbNullChar)
  • If Rien Then
  • Dossier_choisi = Left$(Resultat, Rien - 1)
  • MsgBox "Le dossier choisi est :" & vbNewLine & Dossier_choisi, vbInformation
  • End If
  • End If
  • End Sub
  • Private Sub Parti_Click()
  • If Dossier_choisi = "" Then
  • MsgBox "Vous devez sélectionner un dossier à analyser.", vbExclamation
  • Exit Sub
  • End If
  • If Right(Dossier_choisi, 1) <> "\" Then
  • Dossier_choisi = Dossier_choisi & "\"
  • End If
  • Parcourir.Enabled = False
  • Sous_dossiers.Enabled = False
  • Afficher_sous_dossiers.Enabled = False
  • Parti.Enabled = False
  • Etat.Text = ""
  • ecrire "C'est parti dans " & Dossier_choisi, True, vbBlue
  • explorer Dossier_choisi
  • ecrire "C'est fini !", True, vbBlue
  • Parcourir.Enabled = True
  • Sous_dossiers.Enabled = True
  • Afficher_sous_dossiers.Enabled = True
  • Parti.Enabled = True
  • End Sub
Dim Dossier_choisi As String
Private Type BrowseInfo
hWndOwner As Long
pIDLRoot As Long
pszDisplayName As Long
lpszTitle As Long
ulFlags As Long
lpfnCallback As Long
lParam As Long
iImage As Long
End Type
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
Private Declare Function lstrcat Lib "kernel32" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
Private Sub ecrire(A_ecrire As String, Optional Gras As Boolean, Optional Couleur As Long)
Etat.SelStart = Len(Etat)
Etat.SelBold = Gras
If Not (IsMissing(Couleur)) Then
Etat.SelColor = Couleur
Else
Etat.SelColor = vbBlack
End If
Etat.SelText = A_ecrire & vbNewLine
Etat.SelBold = False
Etat.SelColor = vbBlack
End Sub
Public Function explorer(ByVal Chemin As String)
On Error Resume Next
Dim id_1 As Integer
Dim id_2 As Integer
Dim id_3 As Integer
Dim ids() As String
Dim dossier_courant As String
If Dir(Chemin, vbDirectory) = "" Then
Exit Function
End If
dossier_courant = Dir(Chemin, vbDirectory)
Do While dossier_courant <> ""
If dossier_courant <> "." And dossier_courant <> ".." Then
If (GetAttr(Chemin & dossier_courant) And vbDirectory) <> 0 Then
id_1 = id_1 + 1
End If
End If
dossier_courant = Dir
Loop
ReDim ids(id_1)
dossier_courant = Dir(Chemin, vbDirectory)
Do While dossier_courant <> ""
If dossier_courant <> "." And dossier_courant <> ".." Then
If (GetAttr(Chemin & dossier_courant) And vbDirectory) <> 0 Then
id_2 = id_2 + 1
ids(id_2) = dossier_courant
If Afficher_sous_dossiers.Value <> 0 Then
ecrire dossier_courant, True
End If
Else
ecrire dossier_courant
End If
End If
dossier_courant = Dir
Loop
For id_3 = 1 To id_1
If Sous_dossiers.Value <> 0 Then
explorer Chemin & ids(id_3) & "\"
End If
Next
End Function
Private Sub Parcourir_Click()
Dim Rien As Integer
Dim Liste As Long
Dim Resultat As String
Dim Browse_info As BrowseInfo
With Browse_info
.hWndOwner = Me.hWnd
.lpszTitle = lstrcat("Choix du dossier à analyser", "")
.ulFlags = 1
End With
Liste = SHBrowseForFolder(Browse_info)
If Liste Then
Resultat = String$(260, 0)
SHGetPathFromIDList Liste, Resultat
CoTaskMemFree Liste
Rien = InStr(Resultat, vbNullChar)
If Rien Then
Dossier_choisi = Left$(Resultat, Rien - 1)
MsgBox "Le dossier choisi est :" & vbNewLine & Dossier_choisi, vbInformation
End If
End If
End Sub
Private Sub Parti_Click()
If Dossier_choisi = "" Then
MsgBox "Vous devez sélectionner un dossier à analyser.", vbExclamation
Exit Sub
End If
If Right(Dossier_choisi, 1) <> "\" Then
Dossier_choisi = Dossier_choisi & "\"
End If
Parcourir.Enabled = False
Sous_dossiers.Enabled = False
Afficher_sous_dossiers.Enabled = False
Parti.Enabled = False
Etat.Text = ""
ecrire "C'est parti dans " & Dossier_choisi, True, vbBlue
explorer Dossier_choisi
ecrire "C'est fini !", True, vbBlue
Parcourir.Enabled = True
Sous_dossiers.Enabled = True
Afficher_sous_dossiers.Enabled = True
Parti.Enabled = True
End Sub 


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

TERMINER UN PROCESSUS DU SYSTÈME
Source avec Zip Source avec une capture MORPION : JEU PAR INTERNET EN 6X6 CASES. PLUSIEURS OPTIONS
Source avec Zip Source avec une capture ZOUZOUBAR : AFFICHE UNE BARRE DANS UN COIN DE L'ÉCRAN POUR A...

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) MODIFIER LES EXTENSION DES FICHIERS par okosa
ROUTINE DIR RÉCURSIVE POUR OBTENIR LA LISTE DE TOUS LES FICH... par kerisolde
Source avec Zip Source avec une capture FILE,SECURITY,FICHIER par okosa
Source avec Zip Source avec une capture Source .NET (Dotnet) PATCHEUR DE FICHIER par tototh
Source avec Zip Source avec une capture LECTURE DES INFORMATIONS DES DISQUES COMPOSANT UN ENSEMBLE R... par jack

Commentaires et avis

Commentaire de DebvbJ le 09/02/2003 20:02:27

Perso ça aurait mieux si t'aurais mis un zip

Commentaire de Urgo le 10/02/2003 19:06:18

Pas mal comme source 6.3/10

Commentaire de Mémère le 12/02/2003 10:21:01 administrateur CS

Euh qu'est ce qu'on dit dans ce cas la déja? Ah oui... LOL! Ben bravo mek, tu viens de poster la 100eme source de ce type tu as donc gagner un paquet de lessive BONUX.

Commentaire de cmoeckes le 13/10/2003 10:24:41

Un très bon code d'affichage de listes de fichiers/dossiers.
Qui plus est facile à lire et donc à comprendre pour un débutant comme moi malgré l'absence de commentaires (dommage).
Je commence enfin à comprendre comment lire recursivement des repertoires et sous-repertoires. Merci !

Commentaire de ifebo le 21/06/2005 14:59:47

L'Ultra débutant que je suis aurait aimer savoir comment utiliser ces informations ?
J'avais imaginé bêtement qu'il y aurait un fichier genre .exe ou index.html et le code source, une fois qu'on l'a copier/coller on lui met quoi comme extension ?
Merci.

Commentaire de malo777 le 14/12/2009 17:09:34

bonjour,
est-il possible, dans ce code, de ne choisir que certaine extension à faire apparaître dans le richtext?

Merci

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales