29/03/2024
Windev et les Api WindowsNb de visiteurs en ligne : 1
>> Introduction << >> Codes et Forum << >> Download <<


Rubrique : 1 - Windows Général       Sujet : Disque
Auteur Message
 °¨¨ JL ¨¨° Posté le : 23/06/2000 12:00:00


//Capacité et Espace libre

lpFreeBytesAvailableToCaller est un monetaire
lpTotalNumberOfBytes est un monetaire
lpTotalNumberOfFreeBytes est un monetaire

si appeldll32("kernel32","GetDiskFreeSpaceExA" , "C:\" , &lpFreeBytesAvailableToCaller , &lpTotalNumberOfBytes , &lpTotalNumberOfFreeBytes)
    info("Esp. Total : " + verschaine(lpTotalNumberOfBytes*1000000,"14.fs"), "Esp. Libre : " + verschaine(lpFreeBytesAvailableToCaller*1000000,"14.fs"))
fin




//Formater un disque
// Type :
// 0 = Formatage rapide
// 1 = Formatage complet
// 2 = Copie fichiers système

// Disque :
// Commence à 0 > Disquette A:

type=0
disque=0

res est un entier long = AppelDll32("shell32.dll","SHFormatDrive",handle(),disque,0xffff,type)

// si res = 6  OK
// si res = -1 Erreur
// si res = -2 Annulé
// si res = -3 Disque non formatable



//Modifier le nom de volume

disque est une chaine asciiz de 4 = "C:\"
nomdevolume est une chaine fixe de 11="SWindows"

si pas appeldll32("kernel32","SetVolumeLabelA",&disque,nomdevolume) alors
  info("Impossible de changer le nom du disque")
fin



//Nom du volume, Numéro de série, type de disque

lpRootPathName est une chaine="C:\"
lpVolumeNameBuffer est une chaine asciiz de 13
nVolumeNameSize est un entier long=12
lpVolumeSerialNumber est un entier long
lpMaximumComponentLength est un entier long
lpFileSystemFlags est un entier long
lpFileSystemNameBuffer est une chaine asciiz de 32
nFileSystemNameSize est un entier long=32

si AppelDLL32("kernel32" , "GetVolumeInformationA" , lpRootPathName , &lpVolumeNameBuffer , nVolumeNameSize , &lpVolumeSerialNumber , &lpMaximumComponentLength , &lpFileSystemFlags , &lpFileSystemNameBuffer , nFileSystemNameSize) alors
    info("Nom du Volume : "+lpVolumeNameBuffer, "N° Série : "+poidsfort(lpVolumeSerialNumber)+"-"+poidsfaible(lpVolumeSerialNumber), "Type :"+lpFileSystemNameBuffer)
fin