VBScript : calculer la taille réellement occupée par un fichier
d_idaho
Messages postés1Date d'inscriptionjeudi 1 mars 2007StatutMembreDernière intervention 1 mars 2007
-
1 mars 2007 à 10:29
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 2018
-
1 mars 2007 à 15:51
Bonjour,
La propriété Size d'un FileSystemObject correspond à la propriété Taille de la fenêtre Propriétés
d'un dossier ou d'un fichier
.
Je souhaiterais connaître le moyen de calculer en VBScript la taille réelle occupée par un fichier ou un dossier sur le disque, ce qui correspond à la propriété Taille sur le disque de la fenêtre Propriétés d'un dossier ou d'un fichier.
J'ai découvert sur un autre site qu'en C#, il était possible d'importer la DLL kernel32.dll, et d'utiliser l'API GetDiskFreeSpace :
DllImport("kernel32.dll"SetLastError=True, CharSet=CharSet.Auto)> _
Shared Function GetDiskFreeSpace( _
ByVal lpRootPathName AsString, _
ByRef lpSectorsPerCluster AsUInt32, _
ByRef lpBytesPerSector As System.UInt32, _
ByRef lpNumberOfFreeClusters As System.UInt32, _
ByRef lpTotalNumberOfClusters As System.UInt32)As Boolean
End Function
Ce qui permet de connaître:
Le nombre de Byte par secteur: lpBytesPerSector Le nombre de secteur
par cluster: lpSectorsPerCluster
Et de recalculer le nombre de cluster NC occupé par un
fichier, d'où la taille réelle...
Mais je ne sais pas comment utiliser cette API VBScript...