Affichage de l'occupation d'un disque dur répertoire par répertoire

Soyez le premier à donner votre avis sur cette source.

Vue 10 212 fois - Téléchargée 1 177 fois

Description

J'avais écrit cet utilitaire quand j'avais un "petit" disque dur. Il me manquait toujours de la place, et pour faire le "ménage", je ne savais pas où taper !
Ce programme affiche sous forme de camembert, pour un répertoire donné (y compris la racine), l'occupation des fichiers, des sous-répertoires (en tenant compte de leur arborescence).

Mise à jour 08/06/2004

- Source commenté
- Petit exposé sur l'utilisation d'une procédure récursive

Conclusion :


Ce programme utilise le composant TChart pour l'affichage, et un algorithme récursif pour le parcours du disque.
Le résultat du parcours de racine est mémorisé pour un accès plus rapide aux passage suivant. Comme il n'y a qu'une table de mémoire, il faut tout de même reparcourir la racine quand on change de disque

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
22
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
8 juin 2005

merci comme d'avoir répondu
et exuse pour mon retard
Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
3
Salut, Ada_azoul,
Comme ce source n'a aucun rapport avec ton problème, et que je n'ai pas de réponse à ta question, je pense que tu devrais la reposer dans le forum, pour toucher un maximum de compétences.

A+

Ken@vo
Messages postés
22
Date d'inscription
samedi 31 juillet 2004
Statut
Membre
Dernière intervention
8 juin 2005

Salut Kenavo


j'ai 1 probleme concernant une connection entre 2 ord distants

voila G une application delphi +interbase(declaré avec tcp/ip du serveur)

et j'aimerais que mon application cliente se connecte par modem
ou internet a mon serveur comment puis-je y arrivé
Messages postés
6
Date d'inscription
mardi 14 septembre 2004
Statut
Membre
Dernière intervention
21 juillet 2009

C'est vrai j'ai confondu *. et *.*
mais il n'empêche: pourquoi pas avec * tout court ? mais qu'importe c'est qu'un détail

par contre, pour ce qui est du composant, je voulais justement pouvoir me passer de ce composant pour faire des traitements récursifs. Et cette fonction findfirst, je ne l'aime pas beaucoup. Ca me fait trop penser à une espèce d'interface de l'outil recherche de Windows ( qui est ce que je connais de plus sure pour ne pas retrouver ses fichiers ;)
Si tu fais du Php, tu doit connaitre les fonctions opendir et readdir. Elles sont vraiments trés faciles à manipuler. C'est des équivalences à ce genre de fonctions que je cherchais.
J'ai plongé des heures dans l'aide, j'ai trouver quelque choses avec le message CB_DIR par exemple mais je suis incapable de contrôler ce truc. En plus c'est tellement eloigné de ce que je cherche que j'ai pas poussé plus loin: j'utilise comme toi le Tfilelistbox et le findfirst et findnext.
merci quand même.
Au fait: J'ai remarqué une anomalie dans le rapport donné par le programme: l'espace restant est de 78 mega et quelques alors que windows me parle de plus de 3 Go de libre.
Sinon ce prog est trop pratique pour faire du nettoyage.
Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
3
Salut,
1 - '*.' revoie justement les fichiers et répertoires sans extension. Evidemment, comme les noms des répertoires peuvent avoir une extension, FindFirst('*.*'..... est plus généralement conseillé.
2 - Regarde le composant TFileListBox : en modifiant la propriété FileType tu peut lister pour un répertoire donné les fichiers, les sous-répertoires ... la propriété Items te donne accès aux fichiers correspondants au type recherché.

Ken@vo
Afficher les 11 commentaires

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.