Dan, Are you trying to find the free space, then try this program which has a couple of methods.
winapp
include <windows.ins>
logical*4 status
integer*8 BytesAvailableToCaller, TotalBytes, FreeBytes
integer*8 lpSectorsPerCluster8, lpBytesPerSector8, lpNumberOfFreeClusters8, lpTotalNumberOfClusters8
STDCALL GETDISKFREESPACEEX 'GetDiskFreeSpaceExA' (STRING,REF,REF,REF):LOGICAL*4
! First version for small disks < 2GB
status = GETDISKFREESPACE('c:\',lpSectorsPerCluster, &
lpBytesPerSector, &
lpNumberOfFreeClusters, &
lpTotalNumberOfClusters)
print *, status,lpSectorsPerCluster, &
lpBytesPerSector, &
lpNumberOfFreeClusters, &
lpTotalNumberOfClusters
lpSectorsPerCluster8 = lpSectorsPerCluster
lpBytesPerSector8 = lpBytesPerSector
lpTotalNumberOfClusters8 = lpTotalNumberOfClusters
lpNumberOfFreeClusters8 = lpNumberOfFreeClusters
TotalBytes=lpSectorsPerCluster8*lpBytesPerSector8*lpTotalNumberOfClusters8
print *,'Totalbytes',TotalBytes
FreeBytes=lpSectorsPerCluster8*lpBytesPerSector8*lpNumberOfFreeClusters8
print *,'Freebytes ',FreeBytes
!alternative version for large disks > 2GB requires STDCALL declaration above
status = GETDISKFREESPACEEX('c:\',BytesAvailableToCaller, &
TotalBytes, &
FreeBytes)
print *, status,BytesAvailableToCaller, &
TotalBytes, &
FreeBytes
end
Regards Ian