我用getdiskfreespace 这个函数

解决方案 »

  1.   

    'FAT32 FreeSpace
    Create a new project, and add this code to Form1:
    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