begin process at 2010 02 09 23:02:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Fichier / Disque

 > 

Calcul de la taille d'un répertoire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Calcul de la taille d'un répertoire

vendredi 8 avril 2005 à 23:13:00 | Calcul de la taille d'un répertoire

zeloostik

Bonjour,

Mon problème est le suivant : je voudrais calculer la taille d'un répertoire donné, et pour l'instant je le fait de façon récursive avec des DirectoryInfo et des FileInfo.

Le problème, mon problème, c'est que c'est très... très long. (Surtout quand il faut calculer la taille d'un disque entier...)

Est-ce que qqn aurait une petite idée de comment faire ca autrement, par exemple en utilisant une api Windows directement (l'explorateur windows lui calcul la taille d'un dossier assez rapidement, so... )

Merci pour votre aide !!

Zel'.
vendredi 8 avril 2005 à 23:44:37 | Re : Calcul de la taille d'un répertoire

scoubidou944

Pour le disk dur regarde voir sur les API via appel DLL de :

[DllImport("kernel32.dll", CharSet=CharSet.Auto)] internal static extern int GetDriveType (string _strRootPathName);

[DllImport("kernel32.dll")] internal static extern uint GetVolumeInformation (string strPathName, StringBuilder strVolumeNameBuffer, int _iVolumeNameSize, out uint _uiVolumeSerialNumber, out uint _uiMaximumComponentLength, out uint _uiFileSystemFlags, StringBuilder strFileSystemNameBuffer, int _iFileSystemNameSize);

[DllImport("kernel32.dll")] internal static extern bool GetDiskFreeSpace (string lpRootPathName, out uint lpSectorsPerCluster, out uint lpBytesPerSector, out uint lpNumberOfFreeClusters, out uint lpTotalNumberOfClusters);

Sinon pour les folders, tu n'as pas trop le choix que le browse récursif

----------------------------
C++ forever
C# amateur
samedi 9 avril 2005 à 18:33:53 | Re : Calcul de la taille d'un répertoire

Bidou

Administrateur CodeS-SourceS
Pour le disque dur on peut faire plus simple en utilisant WMI.
Y'a beaucoup d'exemple sur le net (c'est plus simple que les API!) ...



[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
samedi 9 avril 2005 à 18:42:37 | Re : Calcul de la taille d'un répertoire

scoubidou944

le pb c que les appels WMI sont horriblement lents.

----------------------------
C++ forever
C# amateur
samedi 9 avril 2005 à 20:28:19 | Re : Calcul de la taille d'un répertoire

Bidou

Administrateur CodeS-SourceS
C'est effectivement pas très rapide.
Tout dépend le type de programme auquel on a à faire, ça peut néanmoins être une bonne solution.



[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
dimanche 10 avril 2005 à 23:53:55 | Re : Calcul de la taille d'un répertoire

zeloostik

Merci beaucoup pour ces réponses ! C'est en effet vers une solution du type appel à une API comme kernel32.dll que je vais m'orienter, ca me semble à première vue être le plus rapide.

Je vous tiendrais au courant, et je posterais le code finalisé dans le forum :)


Cette discussion est classée dans : problème, répertoire, taille, calcul, calculer


Répondre à ce message

Sujets en rapport avec ce message

division dans un float [ par el_teedee ] Salut, je voudrais diviser une taille de répertoire par 1024 pour l'avoir en Ko, mais le résultat de 8370 / 1024 qui fait normalement 8,17Ko je crois Calculer les coordonnées d'une ellipse [ par aquanovax ] Bonjours, voila mon problème, j'ai besoin de calculer les coordonnées x et y du tracé de l'ellipse. J'ai utiliser l'équation : racine de x^2 = a^2(1 Problème avec taille télécharger avec FileUpload [ par celeron ] Bonjour à tousTechnologies utilisées : Asp.net avec cSharp.net version 2005 et framework 2.0Dans ma page web j'ai 3 "controls"  asp:FileUpload - asp:B Déploiement d'un web service dans IIS 5 [ par DjAdes ] Bonjour, Voici ma situation : j'ai un web service qui permet de partager un répertoire. Tout d'abord, je l'ai développé avec Visual Studio 2005. Tout C# CreateDirectory [ par sNiPeR59 ] Bonjour, voilà mon problème. j'ai créé une page web qui se charge de copier un certain nombre de fichiers sur le disque. le problème c'est que lorsque Type double problème de calcul [ par mouic ] Bonjour , je rencontre un problème assez contrariant au sujet des types double. J'ai une variable double nommée total. Je lui ajout une première valeu Calcul de l'éloignement [ par lagaman ] bonjour, j'ai une question qui ressemblerait plus a des Maths qu'a du Directx mais bon : en directx j'ai modifier ma caméra pour que je puisse travail Problème taille d'images. [ par emmanuel9 ] Bonjour à tous, En faite j'ai un panel avec une image de taille variable et il faut queje la mette dans apercu avant impression. Donc en faite couper Bitmap + problème de taille [ par emmanuel9 ] Bonjour, En faite, j'ai un bitmap et je dois afficher ce bitmap dans apercu avant impression, le problème c'est que mon bitmap est de taille variabl Petit problèmeThread .net2 [ par gimli123 ] Bonjour, je suis en train de faire un client irc... et j'avais voulu le faire avec le .net2, car je le trouve plus sympa pour les interfaces graphique


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 1,560 sec (4)

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