Hallo Leute,
vielen Dank dass Ihr Euch meines Problem’s angenommen habt! - Ich danke Euch!!!
Ich habe zwischenzeitlich eine Lösung über ein anderes Forum (dFPUG) erhalten und moechte hier die Loeseung nicht vorenthalten:
Local cDirectoryName, FreeBytesAvailable, TotalNumberOfBytes, TotalNumberOfFreeBytes
Local cb, bOk, bufFreeBytesAvailable, bufTotalNumberOfBytes, bufTotalNumberOfFreeBytes
* Verzeichnis, von dem die Kapazität geprüft werden soll:
cDirectoryName = „C:“
Declare INTEGER GetDiskFreeSpaceEx IN Kernel32 ;
STRING @ lpDirectoryName, ;
STRING @ lpFreeBytesAvailable, ;
STRING @ lpTotalNumberOfBytes, ;
STRING @ lpTotalNumberOfFreeBytes
* Speicherbereich für die Rückgabe der Datenm, je 8 bytes - LARGE_INTEGER!
bufFreeBytesAvailable=SPACE(8)
bufTotalNumberOfBytes=SPACE(8)
bufTotalNumberOfFreeBytes=SPACE(8)
* API Funktion aufrufen
bOk = GetDiskFreeSpaceEx(@cDirectoryName, ;
@bufFreeBytesAvailable, @bufTotalNumberOfBytes, @bufTotalNumberOfFreeBytes)>0
* wenn ok
If bOk
* Werte in numerische Fox-Varianlen…
cb = bufFreeBytesAvailable
FreeBytesAvailable = ((((((( ;
ASC(SUBSTR(cb,8,1)) ) * 256 + ;
ASC(SUBSTR(cb,7,1)) ) * 256 + ;
ASC(SUBSTR(cb,6,1)) ) * 256 + ;
ASC(SUBSTR(cb,5,1)) ) * 256 + ;
ASC(SUBSTR(cb,4,1)) ) * 256 + ;
ASC(SUBSTR(cb,3,1)) ) * 256 + ;
ASC(SUBSTR(cb,2,1)) ) * 256 + ;
ASC(SUBSTR(cb,1,1))
cb = bufTotalNumberOfFreeBytes
TotalNumberOfFreeBytes = ((((((( ;
ASC(SUBSTR(cb,8,1)) ) * 256 + ;
ASC(SUBSTR(cb,7,1)) ) * 256 + ;
ASC(SUBSTR(cb,6,1)) ) * 256 + ;
ASC(SUBSTR(cb,5,1)) ) * 256 + ;
ASC(SUBSTR(cb,4,1)) ) * 256 + ;
ASC(SUBSTR(cb,3,1)) ) * 256 + ;
ASC(SUBSTR(cb,2,1)) ) * 256 + ;
ASC(SUBSTR(cb,1,1))
cb = bufTotalNumberOfBytes
TotalNumberOfBytes = ((((((( ;
ASC(SUBSTR(cb,8,1)) ) * 256 + ;
ASC(SUBSTR(cb,7,1)) ) * 256 + ;
ASC(SUBSTR(cb,6,1)) ) * 256 + ;
ASC(SUBSTR(cb,5,1)) ) * 256 + ;
ASC(SUBSTR(cb,4,1)) ) * 256 + ;
ASC(SUBSTR(cb,3,1)) ) * 256 + ;
ASC(SUBSTR(cb,2,1)) ) * 256 + ;
ASC(SUBSTR(cb,1,1))
? "Capacity of " + cDirectoryName + ": "
? "FreeBytesAvailable: "
?? FreeBytesAvailable
? "TotalNumberOfBytes: "
?? TotalNumberOfBytes
? "TotalNumberOfFreeBytes: "
?? TotalNumberOfFreeBytes
Return TotalNumberOfFreeBytes
Else
? "Error GetDiskFreeSpaceEx for " + cDirectoryName
Endif
Nochmals: Vielen Dank, den Leuten die Ihr Wissen mit anderen teilen!