打印本文 打印本文 关闭窗口 关闭窗口
调用API函数得到磁盘上剩余空间的值
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1011  更新时间:2009/4/23 18:57:50  文章录入:mintao  责任编辑:mintao

 

 

调用API函数得到磁盘上剩余空间的值


最直接的方法是调用API函数 GetDiskFreeSpace,函数声明如下:

声明:

Declare Function GetDiskFreeSpace Lib "kernel32" Alias 
"GetDiskFreeSpaceA" (ByVal lpRootPathName As String, lpSectorsPerCluster 
As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, 
lpTtoalNumberOfClusters As Long) As Long


使用:

Private Sub Form_Load()
''''VB Man 2001
''''URL: http://goodvbman.yeah.net
''''E-Mail: coolde@21cn.com

Dim Sectors as Long,Bytes as Long,FreeC as Long, TotalC as Long,Total as Long,Freeb as Long

''''Retrieve information about the C:\
GetDiskFreeSpace "C:\", Sectors, Bytes, Freec, Totalc

''''Set graphic mode to persistent
Me.AutoRedraw = True

''''Print the information to the form
Me.Print " Path: C:\"
Me.Print " Sectors per Cluster:" + Str$(Sector)
Me.Print " Bytes per sector:" + Str$(Bytes)
Me.Print " Number Of Free Clusters:" + Str$(Freec)
Me.Print " Total Number Of Clusters:" + Str$(Totalc)
Total = rTotalc& * rSector& * rBytes&
Me.Print " Total number of bytes in path:" + Str$(Total)
Freeb = rFreec& * rSector& * rBytes&
Me.Print " Free bytes:" + Str$(Freeb)
End sub

计算规则:磁盘上剩余空间(字节)=磁道(Sector) *剩余扇区 *每扇区的字节数

打印本文 打印本文 关闭窗口 关闭窗口