Explorateur de dossier en vb6

Soyez le premier à donner votre avis sur cette source.

Vue 13 847 fois - Téléchargée 1 625 fois

Description

Ce code sert à naviguer dans les dossiers d'un disque en se servant d'un TreeView
J'affiche les sous dossiers lors de l'expansion d'une branche ce qui permet une excellente rapidité d'affichage.
Je sais qui il y des tas de codes dans ce genre, mais la simplicité de celui-ci (uniquement avec la function Dir)
me semble intéressant.

Si quelqu'un peut m'expliquer comment afficher que les dossiers normaux, en lecture seul, systèmes ou cachés je
lui serais reconnaissant car je ni arrive pas!

Merci d'avance
Tomilliev

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

ichirou_tomoe
Messages postés
1
Date d'inscription
mercredi 7 avril 2004
Statut
Membre
Dernière intervention
28 juin 2010
-
Comme j'avais besoin d'un module d'exploration et de sélection multiples sur les disques, j'ai utilisé ce code, en apportant toutefois deux améliorations qui peut-etre pourrait intéresser quelqu'un d'autre:

- sub ExploreDir: un moyen plus sur de récupérer les dossiers, plutot que de tester l'absence de point dans le nom, est de tester:
if GetAttr(Path & m) = vbDirectory then
à la place de :
If InStr(Path & m, ".") = 0 Then

- Sub mkBranche: pour ne pas recréer à chaques fois les nodes fils quand on clique sur un noeud, un moyen plus fiable serait de tester la valeur node.children pour voir si ils existent:
on efface les quatres lignes de gestion de la variable LastFils (qui est perdue car déclarée par "dim" et pas "static", et n'est de toutes façon pas conservée pour tous les nodes quand on en ouvre puis referme plusieurs), on ajoute:
If Node.Children = 0 Then
(et le End If qui va avec) juste autour du "Do.....Loop"
dede1919
Messages postés
109
Date d'inscription
mercredi 29 novembre 2006
Statut
Membre
Dernière intervention
9 octobre 2009
-
bonjour!

J'aime beaucoup! La difficulté n'est pas énorme. Mais parfois le plus dur c'est de rester simple ;-)
J'ai une petite question, sais tu comment on peu copier (filecopy) un fichier venant du dossier temporaire d'internet explorer vers le dossier mes documents. un autre dossier, un fichier normal ça va. Mais je n'arrive pas à sortir un fichier du dossier. Voilà, que dire à pars ça ?? continue ;)
ciberrique
Messages postés
591
Date d'inscription
lundi 25 août 2003
Statut
Membre
Dernière intervention
18 juillet 2010
-
Pour avoir l'attribut d'un fichier/dossier tu as la fonction GetAttr, msdn :

Renvoie une valeur de type Integer indiquant les attributs du fichier ou du dossier.

Syntaxe

GetAttr(pathname)

L'argument pathname est uneexpression de chaîne définissant un nom de fichier. L'argument pathname peut préciser le répertoire ou le dossier et le lecteur.

Valeurs renvoyées

La valeur renvoyée par GetAttr est la somme des valeurs d'attributs ci-dessous :

Constante Valeur Description
vbNormal 0 Normal
vbReadOnly 1 Lecture seule
vbHidden 2 Caché
vbSystem 4 Système.
vbDirectory 16 Répertoire ou dossier
vbArchive 32 Fichier modifié depuis la dernière sauvegarde.

J'espere que ca te suffira.
Renfield
Messages postés
17280
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
21 juillet 2019
57 -
Evite d'utiliser FSO, contrairement a ce que te conseille Ghuysmans99

FSO, comme son nom l'indique (File SCRIPTING Object) est dédié au VBS.
Il est très lent. Utilises plutôt les APIs adéquates (FindFirstFile, etc.)
TomIlliev
Messages postés
86
Date d'inscription
vendredi 27 décembre 2002
Statut
Membre
Dernière intervention
13 octobre 2016
2 -
Salut ghuysmans99
Ce code est à la base juste un exercice de style.
Mais je me suis pris au jeu et je l'ai peaufiné car des explorateurs de dossiers simple et performants ne sont pas légions.

Une question
Est-il possible de faire afficher à une DirListBox les dossiers cachés, système, lecture seule?

Tomilliev

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.