sé que este La pregunta ya es bastante antigua, pero busqué Stackoverflow y descubrí que nadie tenía solución para esto, así que decidí publicar.
Hay QSystemStorageInfo clase en QtMobility, se proporciona una forma de plataforma cruzada para obtener información sobre las unidades lógicas. Por ejemplo: logicalDrives() devuelve una lista de rutas que puede usar como parámetros para otros métodos: availableDiskSpace(), totalDiskSpace() para obtener el espacio total y libre del disco, en consecuencia, en bytes.
Ejemplo de uso:
QtMobility::QSystemStorageInfo sysStrgInfo;
QStringList drives = sysStrgInfo.logicalDrives();
foreach (QString drive, drives)
{
qDebug() << sysStrgInfo.availableDiskSpace(drive);
qDebug() << sysStrgInfo.totalDiskSpace(drive);
}
En este ejemplo se imprime el espacio libre y total en bytes para todas las unidades lógicas en OS. No se olvide de añadir QtMobility en el archivo de proyecto Qt:
CONFIG += mobility
MOBILITY += systeminfo
he usado estos métodos en un proyecto que estoy trabajando ahora y funcionó para mí. Espero que ayude a alguien!
que aguantar y utilizar la API de Windows, monstruosidad que es. – JimDaniel
Parece que tendré que hacerlo y luego trataré con la versión de Linux en el camino también. Alegría. – dwj
Siempre hay [APR] (https://apr.apache.org/). –