Accueil > > > LISTE DE FICHIERS SUR UN DISQUE EN VB6
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
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
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
|
Derniers Blogs
[WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
LISTER KEYS.KEYLISTER KEYS.KEY par Onin42
Cliquez pour lire la suite par Onin42
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|