|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
LISTE DE FICHIERS SUR UN DISQUE EN VB6
Information sur la source
Description
Ce programme permet de lister une arborescence de répertoires et de fichiers. Le résultat est mis dans un fichier texte de votre choix. Un fichier "\fichiersOuRepertoiresNonLus.txt" liste les erreurs d'accès (droits d'accès ou fichier ouvert par autre appli ou erreur disque à cet endroit) Il est dans le répertoire où est installé le programme. La fonction de listage et les fonctions de tri utilisent pas mal d'accès disque.. il est donc préférable d 'installer le programme sur un disque dur et non sur une clé USB (ca peut être 10 fois plus long) Le programme de tri peut être utilisé à d' autres fins Sa vitesse est en "NLog(N)" et dépend de la vitesse du disque dur ou du média utilisé. Il peut nécessiter jusque à 4 fois le volume mémoire du fichier à trier. En gros, on trie des ensembles déja ordonnés. Au début par 2, puis par 4 puis par ..2^n>= nb de lignes à trier.J'appelle cela un 'tri Binaire .." Mais assez efficace. C'est juste pour le fun et plaisir de programmer en VB car même le vieux MSDOS est efficace sur le sujet. dir c:\rep_toto /s/w/ah/ar/aa/b >d:\tmplst.txt par exemple! Mais ça ne dit pas comment c'est fait!
Source
- Public Sub FileSearch(xPath, XFile, xFichierSortie, xTypesDeFichiersRecherches As Byte)
- Dim ww As String
- Dim xx, yy, zz, FichierErreurs As Integer
- Dim NbErreurs As Long
- Dim w, wx As String
- Dim Test As Boolean
- Dim Entree1, Entree2 As String
-
- Entree1 = App.Path & "\tmp1.txt"
- Entree2 = App.Path & "\tmp2.txt"
-
- FichierErreurs = FreeFile: Open App.Path & "\fichiersOuRepertoiresNonLus.txt" For Output As
-
- FichierErreurs
-
- zz = FreeFile: Open xFichierSortie For Output As zz
- Test = False
- xx = FreeFile
- Open Entree1 For Output As xx
- w = ""
- On Error GoTo TERR
- w = Dir(xPath & "*.*", xTypesDeFichiersRecherches)
- On Error GoTo 0
- While w <> ""
- If w <> ".." And w <> "." Then
- w = xPath & w
- If IsFile(w) Then
- Print #zz, w
- Else
- Print #xx, w
- Test = True
- End If
- End If
- w = Dir
- Wend
- Close xx
-
- While Test
- xx = FreeFile: Open Entree1 For Input As xx
- yy = FreeFile: Open Entree2 For Output As yy
- Test = False
- While Not EOF(xx)
- Line Input #xx, w
- Print #zz, w & "\"
- ww = ""
- On Error GoTo TERR
- ww = Trim(Dir(w & "\*.*", xTypesDeFichiersRecherches))
- On Error GoTo 0
- While ww <> ""
- If ww <> ".." And ww <> "." Then
- ww = w & "\" & ww
- If IsFile(ww) Then
- Print #zz, ww
- LblInfo = w
- DoEvents
- Else
- Print #yy, ww
- Test = True
- End If
- End If
- ww = Trim(Dir)
- Wend
- Wend
- wz = Entree1: Entree1 = Entree2: Entree2 = wz
- Close xx
- Close yy
- Wend
- Close zz
- If ExistFile(Entree1) Then Kill Entree1
- If ExistFile(Entree2) Then Kill Entree2
- Me.SetFocus
- ww = " Liste disponible dans : " & RésultatTxt.Text
- ww = ww & vbCrLf
- ww = ww & vbCrLf & " Fichiers ou répertoires inaccessibles = " & NbErreurs
- ww = ww & vbCrLf & " Voir le fichier " & App.Path & "\fichiersOuRepertoiresNonLus.txt"
- ww = ww & vbCrLf
- LblInfo.Caption = ww
- Close #FichierErreurs
- Exit Sub
- TERR:
- Print #FichierErreurs, Err.Number, "| " & w & " |"
- NbErreurs = NbErreurs + 1
- Resume Next
- End Sub
Public Sub FileSearch(xPath, XFile, xFichierSortie, xTypesDeFichiersRecherches As Byte)
Dim ww As String
Dim xx, yy, zz, FichierErreurs As Integer
Dim NbErreurs As Long
Dim w, wx As String
Dim Test As Boolean
Dim Entree1, Entree2 As String
Entree1 = App.Path & "\tmp1.txt"
Entree2 = App.Path & "\tmp2.txt"
FichierErreurs = FreeFile: Open App.Path & "\fichiersOuRepertoiresNonLus.txt" For Output As
FichierErreurs
zz = FreeFile: Open xFichierSortie For Output As zz
Test = False
xx = FreeFile
Open Entree1 For Output As xx
w = ""
On Error GoTo TERR
w = Dir(xPath & "*.*", xTypesDeFichiersRecherches)
On Error GoTo 0
While w <> ""
If w <> ".." And w <> "." Then
w = xPath & w
If IsFile(w) Then
Print #zz, w
Else
Print #xx, w
Test = True
End If
End If
w = Dir
Wend
Close xx
While Test
xx = FreeFile: Open Entree1 For Input As xx
yy = FreeFile: Open Entree2 For Output As yy
Test = False
While Not EOF(xx)
Line Input #xx, w
Print #zz, w & "\"
ww = ""
On Error GoTo TERR
ww = Trim(Dir(w & "\*.*", xTypesDeFichiersRecherches))
On Error GoTo 0
While ww <> ""
If ww <> ".." And ww <> "." Then
ww = w & "\" & ww
If IsFile(ww) Then
Print #zz, ww
LblInfo = w
DoEvents
Else
Print #yy, ww
Test = True
End If
End If
ww = Trim(Dir)
Wend
Wend
wz = Entree1: Entree1 = Entree2: Entree2 = wz
Close xx
Close yy
Wend
Close zz
If ExistFile(Entree1) Then Kill Entree1
If ExistFile(Entree2) Then Kill Entree2
Me.SetFocus
ww = " Liste disponible dans : " & RésultatTxt.Text
ww = ww & vbCrLf
ww = ww & vbCrLf & " Fichiers ou répertoires inaccessibles = " & NbErreurs
ww = ww & vbCrLf & " Voir le fichier " & App.Path & "\fichiersOuRepertoiresNonLus.txt"
ww = ww & vbCrLf
LblInfo.Caption = ww
Close #FichierErreurs
Exit Sub
TERR:
Print #FichierErreurs, Err.Number, "| " & w & " |"
NbErreurs = NbErreurs + 1
Resume Next
End Sub
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 04 avril 2008 09:52:50 :
- Modification open #1 par FichierErreurs = FreeFile
Paramétage de la fonction par xTypesDeFichiersRecherches (=vbDirectory Or vbSystem Or vbHidden)
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Comment faire un tri alphabetique d'une liste de nom? [ par Cerber ]
Je desire trier une liste de nom par ordre alphabetique.Le programme prend pour l'instant des données dans une page excel et crée une page html ou il
Tri colonne liste view [ par tom42 ]
Je possede une liste view avec une colonne date.Quand je clic sur le titre de la colonne pour trier par date corissante le trie se fait dabord sur le
pb de code dans listbox pl colonnes [ par PDT ]
Set db = OpenDatabase("base.mdb")reqlist = "select champ1, champ2 from table where (champ3 = 1)"Set tri = db.OpenRecordset(reqlist)If tri.RecordCount
liste déroulante en vb6 [ par fgadenne ]
je voudrais savoir si il existe un control vb6 qui me permette d'auto renseigner une liste déroulante avec un champ d'une table accessmerci d'avance
Tri et recherche avec le contrôle ADO en VB6 [ par zakay ]
Comment effectuer un tri et une recherche avec le contrôle ADO en Visual Basic 6
tri de la liste dans datacombo [ par polob ]
je souhaiterai savoir s'il est possible de trier alphabetiquement les données de la liste d'un data combo Merci d'avance
VB6 DbCombo [ par phinebacker ]
Comment peut on pré-positionner par défaut une dbcombo sur un élément de la liste.Avec une combo simple on utilise listindex (de memoire) mais avec la
tri dans un tri.... [ par rocknroll2 ]
Bonsoir à tous,Je reviens vers vous pour, évidement, un autre problème insoluble pour mes faibles connaissance en VB6!J'ai 02 colonnes de nombres.Je d
Comment trier une liste déroulante créée dans la barre d'outils [ par cutkilleuse ]
salut tout le monde,J'ai un gros soucis concernant les tris!!! ='(A partir d'un formulaire j'ai un bouton qui me permet de créer mes propres requetes,
Tri suivant deux zone de liste modifiable [ par lestat5 ]
Bonjour,Je possède un formulaire avec trois zones de liste modifiable.Je choisit un element dans la première, j'obtiens les choix correspondant dans l
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|