begin process at 2012 02 09 09:29:06
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

API

 > ESPACE DISQUE (TOTAL, LIBRE, UTILISÉ SUR N'IMPORTE KEL DISQUE) 1.0

ESPACE DISQUE (TOTAL, LIBRE, UTILISÉ SUR N'IMPORTE KEL DISQUE) 1.0


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :API Niveau :Débutant Date de création :01/01/2002 Date de mise à jour :01/01/2002 14:58:48 Vu :7 953

Auteur : Littleroswell

Ecrire un message privé
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

Il permet de connaitre l'espace disque total, libre ou utilisé sur n'importe kel disque dur

Source

  • // créer un type
  • type
  • TEspaceDisque = (tedTotal, tedLibre, tedUtilise);
  • TUniteOctet = (tuoOctet, tuoKoctet, tuoMoctet, tuoGoctet, tuoToctet);
  • //*************************************************************
  • // Fonction trouvant l'espace Libre, Utilisé, Total d'un disque
  • //*************************************************************
  • // 1er Param est le disque dont on veut connaitre la taille
  • // 2ieme Param est une contante pour savoir kel taille on veut calculer
  • // tedTotal : Espace Disque Total
  • // tedLibre : Espace Disque Libre
  • // tedUtilise : Espace Disque Utilise
  • //
  • // 3ieme Param est une constante pour savoir dans kel unite la taille doit etre retournée
  • // tuoOctet : Octet
  • // tuoKoctet : Ko (KiloOctet)
  • // tuoMoctet : Mo (MegaOctet)
  • // tuoGoctet : Go (GigaOctet)
  • // tuoToctet : To (TeraOctet)
  • //
  • function EspaceDisque (disque:string; espace:TEspaceDisque; unite:TUniteOctet):extended;
  • var
  • lpFreeBytesAvailableToCaller : TLargeInteger;
  • lpTotalNumberOfBytes : TLargeInteger;
  • lpTotalNumberOfFreeBytes : TLargeInteger;
  • taille : Extended;
  • begin
  • if GetDiskFreeSpaceEx(PChar(disque), lpFreeBytesAvailableToCaller, lpTotalNumberOfBytes, @lpTotalNumberOfFreeBytes)
  • then
  • begin
  • case espace of
  • tedTotal : taille := lpTotalNumberOfBytes;
  • tedLibre : taille := lpTotalNumberOfFreeBytes;
  • tedUtilise : taille := lpTotalNumberOfBytes - lpTotalNumberOfFreeBytes;
  • else
  • taille := lpTotalNumberOfBytes;
  • end;
  • case unite of
  • tuoOctet : taille := taille;
  • tuoKoctet : taille := taille/(power(1024,1));
  • tuoMoctet : taille := taille/(power(1024,2));
  • tuoGoctet : taille := taille/(power(1024,3));
  • tuoToctet : taille := taille/(power(1024,4));
  • else
  • taille := taille/(power(1024,2));
  • end;
  • end;
  • result := RoundTo(taille,-2);
  • end;
  • //************************************************************
  • // on appelle la fonction
  • // Si on veut connaitre l'espace libre sur le disque 'C' en 'Mo'
  • Taille := EspaceDisque('c:\', tedLibre, tuoMoctet);
  • showmessage(FloatToStr(Taille) + ' Mo');
// créer un type
type
TEspaceDisque   = (tedTotal, tedLibre, tedUtilise);
TUniteOctet     = (tuoOctet, tuoKoctet, tuoMoctet, tuoGoctet, tuoToctet);

//*************************************************************
//       Fonction trouvant l'espace Libre, Utilisé, Total d'un disque
//*************************************************************
// 1er   Param est le disque dont on veut connaitre la taille
// 2ieme Param est une contante pour savoir kel taille on veut calculer
//   tedTotal   :  Espace Disque Total
//   tedLibre   :  Espace Disque Libre
//   tedUtilise :  Espace Disque Utilise
//
// 3ieme Param est une constante  pour savoir dans kel unite la taille doit etre retournée
//   tuoOctet  : Octet
//   tuoKoctet : Ko    (KiloOctet)
//   tuoMoctet : Mo    (MegaOctet)
//   tuoGoctet : Go    (GigaOctet)
//   tuoToctet : To    (TeraOctet)
//
function EspaceDisque (disque:string; espace:TEspaceDisque; unite:TUniteOctet):extended;
var
  lpFreeBytesAvailableToCaller : TLargeInteger;
  lpTotalNumberOfBytes         : TLargeInteger;
  lpTotalNumberOfFreeBytes     : TLargeInteger;
  taille                       : Extended;
begin

  if GetDiskFreeSpaceEx(PChar(disque), lpFreeBytesAvailableToCaller, lpTotalNumberOfBytes, @lpTotalNumberOfFreeBytes)
  then
    begin
      case espace of
        tedTotal   : taille := lpTotalNumberOfBytes;
        tedLibre   : taille := lpTotalNumberOfFreeBytes;
        tedUtilise : taille := lpTotalNumberOfBytes - lpTotalNumberOfFreeBytes;
      else
        taille := lpTotalNumberOfBytes;
      end;

      case unite of
        tuoOctet  : taille := taille;
        tuoKoctet : taille := taille/(power(1024,1));
        tuoMoctet : taille := taille/(power(1024,2));
        tuoGoctet : taille := taille/(power(1024,3));
        tuoToctet : taille := taille/(power(1024,4));
      else
        taille := taille/(power(1024,2));
      end;
    end;

  result := RoundTo(taille,-2);
end;

//************************************************************
// on appelle la fonction
// Si on veut connaitre l'espace libre sur le disque 'C' en 'Mo'   
  Taille := EspaceDisque('c:\', tedLibre, tuoMoctet);
  showmessage(FloatToStr(Taille) + ' Mo');


 

 Conclusion

Toutes Fonctions que je propose a été créé et donc testé par moi-même alors si problème il y a ne pas hésiter à m'écrire. :)


 Sources du même auteur

CHANGER LE WALLPAPER 1.0
CONNAÎTRE LA RÉSOLUTION DE L'ÉCRAN ET CELLE DE L'ESPACE DE T...
TROUVER LE RÉPERTOIRE WINDOWS, SYSTEM ET TEMP
CONNAÎTRE LE NOM DE L'ORDINATEUR ET LE NOM DE L'UTILISATEUR ...
BASE DES REGISTRES (LIRE, ECRIRE SUPPRIMER, MODIFIER) 1.0

 Sources de la même categorie

Source avec Zip Source avec une capture KINECT TEST V1 par FFCAST
Source avec Zip DÉCOUPER UNE FENÊTRE par gta126
Source avec Zip TRANSCRIRE UN FICHIER OPEN FINANCIAL EXCHANGE (OFX) EN FICHI... par jeffem
Source avec Zip Source avec une capture MSXML 4.0 VALIDATION XML / XSD par redtux
Source avec Zip FBRENOMMEADOBJET par fbalien

Commentaires et avis

Commentaire de snakefinger le 06/08/2002 02:05:31

ca serai cool si tu mettait un zip

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 3,042 sec (3)

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