VC 得到磁盘的空间(总的、已用的、剩余的)

    CString  CurDiskNo;        //当前录像的盘符号
    CString  TotalDiskSize;    //当前录像盘的总大小
    CString  FreeDiskSize;     //当前录像盘和剩余空间   

    char cName[4 * m_iMaxCount] = {0};
    char sDiskPath[4 * m_iMaxCount] = {0};
    GetModuleFileName(NULL, cName, sizeof(cName));  //得到当前运行程序的路径
    CString sSettingFile;
    sSettingFile.Format("%s", cName);
    sSettingFile = sSettingFile.Left(sSettingFile.ReverseFind('//'));
    sSettingFile = sSettingFile + "//" + "Setting.ini";    

//得到配置文件的全路径,录像盘的盘符保存在Setting.ini中
    GetPrivateProfileString("disk", "path", NULL, sDiskPath, sizeof(sDiskPath), sSettingFile);

//从配置文件中得到盘符
    char  DiskName[4];
    DiskName[0] = sDiskPath[0];
    DiskName[1] = sDiskPath[1];
    DiskName[2] = sDiskPath[2];
    DiskName[3] = '/0';
    ULARGE_INTEGER lpuse;
    ULARGE_INTEGER lptotal;
    ULARGE_INTEGER lpfree;
    GetDiskFreeSpaceEx(DiskName,&lpuse,&lptotal,&lpfree);  

//得到DiskName盘符的的总容量、已用空间大小、剩余空间大小
    TotalDiskSize.Format("总空间:%4.2fGB",lptotal.QuadPart/1024.0/1024.0/1024.0);
    FreeDiskSize.Format("可用空间:%4.2fGB",lpfree.QuadPart/1024.0/1024.0/1024.0);
    CurDiskNo.Format("当前磁盘:%s",sDiskPath);

 

 

 

Setting.ini文件内容如下:

 

[package]
time=1
[disk]
path=E:/

 

那么上面的DiskName就是 E:/ 得到的就是E盘的空间大小   这里是把Setting.ini文件放到执行文件的目录下的

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值