Qt中获得磁盘容量和剩余磁盘空间(Windows平台)
2012-05-31 20:31
393 查看
#include "Windows.h" #include <QtGlobal> int main(int argc, char *argv[]){ unsigned long long freeBytesToCaller=0,totalBytes=0,freeBytes=0; bool b; b=GetDiskFreeSpaceEx(QString("D:/").toStdWString().c_str(),(PULARGE_INTEGER)&freeBytesToCaller, (PULARGE_INTEGER)&totalBytes,(PULARGE_INTEGER)&freeBytes); qDebug()<<(QString("b=%1,freeBytesToCaller=%2,totalBytes=%3,freeBytes=%4,\ PULARGE_INTEGER type=%5,freeBytesToCaller type=%6,\ sizeof(freeBytesToCaller)=%7.") .arg(b).arg(freeBytesToCaller).arg(totalBytes).arg(freeBytes) .arg(typeid(PULARGE_INTEGER).name()).arg(typeid(unsigned _int64).name()) .arg(sizeof(freeBytesToCaller)) ); }
注意,GetDiskFreeSpaceEx是Windows的系统函数,所以需要#include "Windows.h",该函数的实现在kernel32.lib中。
另外,C++中的long或long int类型的长度是4字节,long long类型才是8字节!
参见:
1、使用C++对磁盘进行检测,获取磁盘相应的信息
2、C/C++中的64位整数(__int64 and long long)
相关文章推荐
- [转]Qt中获得指定磁盘的空间大小
- qt中获得指定磁盘的空间大小
- 在Windows下通过JConfig获取磁盘剩余空间信息
- 在Windows下通过JConfig获取磁盘剩余空间信息
- Java:在Windows下通过JConfig获取磁盘剩余空间信息
- windows API error:读取某个磁盘的剩余空间信息时,得不出正确的结果
- Qt linux获取cpu使用率、内存、网络收发速度、磁盘读写速度、磁盘剩余空间等
- 在Windows下通过JConfig获取磁盘剩余空间信息(续)
- 获取与一个磁盘的组织以及剩余空间容量有关的信息以及代码测试
- QT获取磁盘剩余空间大小
- [转载] 用perl获得系统信息 磁盘剩余空间 磁盘类型
- 查看windows磁盘剩余空间
- 获得磁盘剩余空间:GetDiskFreeSpaceEx
- 在vc中获得windows系统信息,硬盘剩余容量,内存大小
- qt中获得指定磁盘的空间大小
- 使用Windows 系统性能监控来报警磁盘空间不足
- 用批处理写的显示磁盘剩余空间的小程序。
- QT SDK 4.7.4 在windows平台的发布问题
- Linux下查看磁盘剩余空间和文件夹大小
- 在windows平台上使用Qt和libmodbus库实现modbus主机功能--转载