调用api函数getfreediskspace的返回值问题
你好!
我调用api函数getfreediskspace以求出硬盘的剩余空间,
但此函数在计算2G以上的硬盘时只显示2097MB左右
2G以下正确。请问为什么?怎样解决?
代码如下:
Dim SectorsPerCluster As Long
Dim BytesPerSector As Long
Dim NumOfFreeClusters As Long
Dim TotalNumberOfCluster As Long
Dim FreeDiskSpaces As Long
Dim bool As Boolean
bool = GetDiskFreeSpace(Drive1.Drive, SectorsPerCluster, _
BytesPerSector, NumOfFreeClusters, TotalNumberOfCluster)
If bool = False Then
MsgBox "call error", vbOKOnly
End If
'以BYTE为单位
FreeDiskSpaces = SectorsPerCluster * BytesPerSector * NumOfFreeClusters
'以MB为单位
FreeDiskSpaces = FreeDiskSpaces / 1024000