begin process at 2010 02 10 11:11:03
  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 :6 250

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 NEXTGENS -> UNITÉS DE TYPES ÉVOLUÉS NOUVELLE GÉNÉRATION (DE... par f0xi
Source avec Zip Source avec une capture AUTO-COMPLÉTION D'UN CONTRÔLE DE SAISIE par Bacterius
Source avec Zip CARDS GAME SDK 1.0.0.0 par f0xi
Source avec Zip Source avec une capture TRAYICON - VOTRE ICONE DANS LA BARRE DES TACHES par Bacterius
Source avec Zip Source avec une capture WINHIDER _ CACHER UN PROGRAMME DE L'ÉCRAN ET DE LA BARRE DE ... par soldier8514

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 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 : 0,109 sec (4)

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