Here you have a function for w95 and vfp 3.0b
*function to return free space
*for example: =mifree("c:\") *
function mifree
lparameters lcdrive
local nTotal,nFree, nError,nNumberOfSectors ,nBytesPerSector
,nBytesPerSector ,nNumberOfFreeClusters ,nTotalOfClusters
DECLARE ;
INTEGER GetDiskFreeSpace ;
in WIN32API ;
STRING cDrive, ;
INTEGER @nNumberOfSectors, ;
INTEGER @nBytesPerSector, ;
INTEGER @nNumberOfFreeClusters, ;
INTEGER @nTotalOfClusters
nNumberOfSectors =0
nBytesPerSector =0
nNumberOfFreeClusters =0
nTotalOfClusters=0
=GetDiskFreeSpace( ;
lcDrive, ;
@nNumberOfSectors, ;
@nBytesPerSector, ;
@nNumberOfFreeClusters, ;
@nTotalOfClusters ;
)
nTotal=nNumberOfSectors *nBytesPerSector *nTotalOfClusters
nFree=nNumberOfSectors *nBytesPerSector *nNumberOfFreeClusters
? lcDrive,nNumberOfSectors,nBytesPerSector,nNumberOfFreeClusters
,nTotalOfClusters
? "Total:", transform(nTotal,"999,999,999,999")+ " Bytes"
? "Free:", transform(nfree,"999,999,999,999")+ " Bytes"
return nfree
I hope you enjoy it.
Miguel