ich versuche gerade den noch freien Platz auf einer Festplatte, und oder einem Wechselmedium zu ermitteln, doch leider geht das so :
Code: Alles auswählen
var
dest:String;
value:Int64;
begin
dest := '/Home/lazarus';
value := DiskFree(addDisk( ExtractFilePath(dest)));
end;

[Edit]
Unabhängig davon, hab ich mir mal die Sysutils.pas angesehen da steht :
Code: Alles auswählen
var
Drives : byte;
DriveStr : array[4..26] of pchar;
Function AddDisk(const path:string) : Byte;
begin
if not (DriveStr[Drives]=nil) then
FreeMem(DriveStr[Drives],StrLen(DriveStr[Drives])+1);
GetMem(DriveStr[Drives],length(Path)+1);
StrPCopy(DriveStr[Drives],path);
inc(Drives);
if Drives>26 then
Drives:=4;
Result:=Drives;
end;
Code: Alles auswählen
Drives : byte= 4;
Denn so gibt mir adddrive erst mal 1 zurück und das ist ja falsch, der 1. wert den es mir zurückgeben sollte müste 4 sein.