zoukankan      html  css  js  c++  java
  • 获取与一个磁盘的组织以及剩余空间容量有关的信息以及代码测试

     
     1 // GetFreeDisk.cpp : 定义控制台应用程序的入口点。
     2 //
     3 
     4 #include "stdafx.h"
     5 #include <atlstr.h>
     6 #include <iostream>
     7 
     8 
     9 using namespace std;
    10 bool CheckDiskSpeech()
    11 {
    12      ULARGE_INTEGER   ulTotalSize;       
    13      ULARGE_INTEGER   ulFreeSize;       
    14      ULARGE_INTEGER   ulAvailLableSize;  
    15  
    16      CString csStr,strAvailableToCaller, strTotalSize, strFreeSize;
    17      //csStr = g_strMediaPhoto.Left(3);
    18      csStr = _T("D:\");
    19      ::GetDiskFreeSpaceEx(csStr,&ulAvailLableSize,&ulTotalSize,&ulFreeSize);
    20      strAvailableToCaller.Format(_T("%ldM"),ulFreeSize.QuadPart/1024/1024); //调用者可用的字节数量
    21     strTotalSize.Format(_T("%ldM"),ulTotalSize.QuadPart/1024/1024); //用于容纳磁盘上的总字节数
    22     strFreeSize.Format(_T("%ldM"),ulAvailLableSize.QuadPart/1024/1024);  //用于容纳磁盘上可用的字节数
    23 
    24     wcout << strAvailableToCaller << endl; 
    25     wcout << strTotalSize << endl;
    26     wcout << strFreeSize << endl;
    27  
    28      if (ulTotalSize.QuadPart / 1024 /1024 < 3000)//少于3000M
    29      {
    30          ::MessageBox(NULL, _T("磁盘空间不足"), _T("提示"), NULL);
    31          return false;
    32      } 
    33      return true;
    34 }
    35 
    36 int _tmain(int argc, _TCHAR* argv[])
    37 {
    38     CheckDiskSpeech();
    39     system("pause");
    40     return 0;
    41 }
    View Code
     
    以下来自百度
     
    GetDiskFreeSpaceEx
    VB声明
    Declare Function GetDiskFreeSpaceEx Lib "kernel32" Alias "GetDiskFreeSpaceExA" (ByVal lpRootPathName As String, lpFreeBytesAvailableToCaller As LARGE_INTEGER, lpTotalNumberOfBytes As LARGE_INTEGER, lpTotalNumberOfFreeBytes As LARGE_INTEGER) As Long
    说明
    获取与一个磁盘的组织以及剩余空间容量有关的信息
    返回值
    Long,非零表示成功,零表示失败。会设置GetLastError
    参数表
    参数 类型及说明
    lpRootPathName String,不包括卷名的磁盘根路径名
    lpFreeBytesAvailableToCaller LARGE_INTEGER,指定一个变量,用于容纳调用者可用的字节数量
    lpTotalNumberOfBytes LARGE_INTEGER,指定一个变量,用于容纳磁盘上的总字节数
    lpTotalNumberOfFreeBytes LARGE_INTEGER,指定一个变量,用于容纳磁盘上可用的字节数
    Windows 95 OSR2,Windows NT 4.0
    注解
    LARGE_INTEGER结构与FILETIME结构在内部完全一致。正式调用前,用GetVersionEx判断函数是否得到了支持。在Windows 95 OSR2环境中,OSVERSIONINFO结构的dwBuildNumbe字段会大于1000
  • 相关阅读:
    原!!如何将多个复杂查询整合成一个查询,并作为一个对象的各个字段输出
    转!!mysql order by 中文排序
    mybatis 模糊查询 like
    转!!log4j基础
    CI框架下的PHP增删改查总结
    tp5中url使用js变量传参方法
    一个用户管理的ci框架的小demo--转载
    CI框架入门教程
    PHP的CI框架流程基本熟悉
    CI
  • 原文地址:https://www.cnblogs.com/lisuyun/p/3627097.html
Copyright © 2011-2022 走看看