Private Declare Function GetDiskFreeSpaceEx
Lib "kernel32"
Alias "GetDiskFreeSpaceExA" (
ByVal lpRootPathName
As String, lpFreeBytesAvailableToCaller
As Currency, lpTotalNumberOfBytes
As Currency, lpTotalNumberOfFreeBytes
As Currency)
As Long
Private Sub Form_Load()
Dim r
As Long, BytesFreeToCalller
As Currency, TotalBytes
As Currency
Dim TotalFreeBytes
As Currency, TotalBytesUsed
As Currency
'the drive to find
Const RootPathName = "C:\"
'get the drive's disk parameters
Call GetDiskFreeSpaceEx(RootPathName, BytesFreeToCalller, TotalBytes, TotalFreeBytes)
'show the results, multiplying the returned
'value by 10000 to adjust for the 4 decimal
'places that the currency data type returns.
Me.AutoRedraw =
True
Me.Cls
Me.
Print
Me.
Print " Total Number Of Bytes:", Format$(TotalBytes * 10000, "###,###,###,##0"
& " bytes"
Me.
Print " Total Free Bytes:", Format$(TotalFreeBytes * 10000, "###,###,###,##0"
& " bytes"
Me.
Print " Free Bytes Available:", Format$(BytesFreeToCalller * 10000, "###,###,###,##0"
& " bytes"
Me.
Print " Total Space Used :", Format$((TotalBytes - TotalFreeBytes) * 10000, "###,###,###,##0"
& " bytes"
End Sub