代码:
#include <stdio.h>
#include <Windows.h>
int main()
{
DWORD l_dwLogicalDrives = GetLogicalDrives();
char s[33]={0};
itoa(l_dwLogicalDrives,s,2);
printf("%s\n",s);
DWORD l_dwBufferLength=26*4;
char Buffer[26*4]={0};
GetLogicalDriveStringsA(l_dwBufferLength,Buffer);
UINT l_dwType=GetDriveTypeA(Buffer); // 盘符根目录,比如C:\
printf("%d\n",l_dwType);
DWORD l_dwSectorsPerCluster=0;
DWORD l_dwBytesPerSector=0;
DWORD l_dwNumberOfFreeClusters=0;
DWORD l_dwTotalNumberOfClusters=0;
/* 盘符根目录,比如C:\ */
GetDiskFreeSpaceA(Buffer,&l_dwSectorsPerCluster,&l_dwBytesPerSector,&l_dwNumberOfFreeClusters,&l_dwTotalNumberOfClusters);
printf("l_dwSectorsPerCluster:%d\n",l_dwSectorsPerCluster);
printf("l_dwBytesPerSector:%d\n",l_dwBytesPerSector);
printf("l_dwNumberOfFreeClusters:%d\n",l_dwNumberOfFreeClusters);
printf("l_dwTotalNumberOfClusters:%d\n",l_dwTotalNumberOfClusters);
return 0;
}
第一个:GetLogicalDrives( ),输出结果:
第二个:GetLogicalDriveStringsA(BufferLength,Buffer),结果:
第三个:GetDriveTypeA(Buffer),结果:
第四个:GetDiskFreeSpaceA( ),结果: