函数原型:
BOOL GetDiskFreeSpace(
LPCTSTR lpRootPathName,
LPDWORD lpSectorsPerCluster,
LPDWORD lpBytesPerSector,
LPDWORD lpNumberOfFreeClusters,
LPDWORD lpTotalNumberOfClusters
);
参数说明:
1.lpRootPathName:指定测试驱动器的根目录的名称。为null时,则为当前目录所在驱动器的根目录名称。
2.LpSectorsPerCluster:取得驱动器每簇的扇区数。
3.LpBytesPerSector:取得驱动器每扇区的字节数。
4.LpNumberOfFreeClusters:磁盘剩余空间的簇数。
5.LpTotalNumberOfClusters:磁盘总空间的簇数。
应用举例:
显示磁盘空间的总容量,剩余容量。
1) 在上例基础上,添加两个edit组件和两个label组件,如
2) 在combobox组件的onchange 事件相应部分添加如下内容:
val
disktotal,diskfree,cl1,cl2,sec1,byt1:longword;
begin
Getdiskfreespace(pchar(combobox1.Items[combobox1.Itemindex]),sec1,byt1,cl1,cl2);//获取磁盘信息
Diskfree:=cl1*sec1*byt1;//剩余容量=剩余簇数*每簇扇区数*每扇区字节数
disktotal:=cl2*sec1*byt1;//总容量=磁盘总簇数*每簇扇区数*每扇区字节数
edit2.text:=formatfloat(''###,##0'',total);
edit3.text:=formatfloat(''###,##0'',freesp);
end;
新闻热点
疑难解答
图片精选