PDA

Visualizza la versione completa : [Visual C++]


nobo_
15-01-2004, 23:08
salve, esiste una funzione in c++ che ritorna lo spazio disponibile su disco?

grazie

iguana13
16-01-2004, 15:35
Esiste una API:



#include <windows.h>
// Questa č la sua dichiarazione:
BOOL GetDiskFreeSpace(
LPCTSTR lpRootPathName, // pointer to root path
LPDWORD lpSectorsPerCluster, // pointer to sectors per cluster
LPDWORD lpBytesPerSector, // pointer to bytes per sector
LPDWORD lpNumberOfFreeClusters,
// pointer to number of free clusters
LPDWORD lpTotalNumberOfClusters
// pointer to total number of clusters
);

// Esempio uso
// NON TESTATO

void main() {
LPDWORD settori_per_cluster,byte_per_settore,cluster_liber i,cluster_totali;
::GetDiskFreeSpace("C:\",settori_per_cluster,byte_per_settore,
cluster_liberi, cluster_totali;

cout << "Byte occupati: ";
cout << (*cluster_totali - *cluster_liberi) * settori_per_cluster * byte_per_settore;
}



:ciauz:

pela
16-01-2004, 17:19
cosė va bene solo fino a 2GB, altrimenti:


...
ULARGE_INTEGER freebytes;
GetDiskFreeSpaceEx("c:\\",NULL,NULL,&freebytes);

:ciauz:

Loading