美文网首页
4.5 使用GetDiskFreeSpace函数获取磁盘空间信息

4.5 使用GetDiskFreeSpace函数获取磁盘空间信息

作者: f675b1a02698 | 来源:发表于2017-09-14 16:16 被阅读0次

    效果

    源码

    #include

    #include

    //获取磁盘空间信息

    BOOL GetDiskSpaceInfo(LPCSTR pszDrive){

    DWORD64 qwFreeBytesToCaller;

    DWORD64 qwTotalBytes;

    DWORD64 qwFreeBytes;

    DWORD dwSectPerClust;

    DWORD dwBytesPerSect;

    DWORD dwFreeClusters;

    DWORD dwTotalClusters;

    BOOL bResult;

    //获取和打印磁盘信息

    bResult = GetDiskFreeSpaceEx(

    pszDrive,

    (PULARGE_INTEGER)&qwFreeBytesToCaller,

    (PULARGE_INTEGER)&qwTotalBytes,

    (PULARGE_INTEGER)&qwFreeBytes

    );

    if (bResult){

    printf("使用GetDiskFreeSpaceEx函数获取磁盘空间信息:\n");

    printf("可获得的空闲空间: %I64d 字节\n",qwFreeBytesToCaller);

    printf("空闲空间: %I64d 字节\n", qwFreeBytes);

    printf("磁盘总容量: %I64d 字节\n", qwTotalBytes);

    }

    bResult = GetDiskFreeSpace(

    pszDrive,

    &dwSectPerClust,

    &dwBytesPerSect,

    &dwFreeClusters,

    &dwTotalClusters

    );

    if (bResult){

    printf("\n使用GetDiskFreeSpace函数获取磁盘空间信息:\n");

    printf("总簇数: %d\n", dwTotalClusters);

    printf("空闲的簇数: %d\n", dwFreeClusters);

    printf("每簇扇区数: %d\n", dwSectPerClust);

    printf("每扇区容量: %d 字节\n", dwBytesPerSect);

    printf("磁盘总容量: %I64d 字节\n", (DWORD64)dwTotalClusters*(DWORD64)dwSectPerClust*(DWORD64)dwBytesPerSect);

    printf("空闲大小: %I64d 字节\n", (DWORD64)dwFreeClusters*(DWORD64)dwSectPerClust*(DWORD64)dwBytesPerSect);

    }

    return bResult;

    }

    int wmain(int argc, PCHAR argv[]){

    GetDiskSpaceInfo(argv[1]);

    getchar();

    }

    相关文章

      网友评论

          本文标题:4.5 使用GetDiskFreeSpace函数获取磁盘空间信息

          本文链接:https://www.haomeiwen.com/subject/fmgqsxtx.html