Hi @ all,
Unten ist ein Teil des Codes. Ziel ist es, dass ich am Ende schreiben kann: "
... mit der insgesamten Größe von xxxxx durchsucht"
Aber irgendwie klapp es nicht. Es gibt zwar keinen Fehler beim Comp. doch ich habe es einfach mal auf C:\ getestet, ohne Unterordner, und die Zahl war viel kleiner als die Tatsächliche Größe aller Dateien. Hat jemand einen Plan, was ich falsch gemacht habe???
Delphi-Quellcode:
function GetFileSize(const AFileName: String): Integer;
var
F: TSearchRec;
begin
Result:=-1;
if FindFirst(AFileName,faDirectory + faHidden,F)=0 then
begin
try
Result := F.Size;
finally
FindClose(F);
end;
End;
end;
Delphi-Quellcode:
procedure GetFilesInDirectory(Directory: String; Mask: String; List: TStrings; WithSubDirs, ClearList: Boolean; a : integer);
procedure ScanDir(const Directory: String);
var
SR: TSearchRec;
SearchedFiles : int64;
begin
SearchedFiles := 0;
if FindFirst(Directory + Mask, faAnyFile - faDirectory, SR) < 0 then SearchedFiles := SearchedFiles + GetFileSize(Directory + SR.Name);
if FindFirst(Directory + Mask, faAnyFile - faDirectory, SR) > 0 then SearchedFiles := SearchedFiles + GetFileSize(Directory + SR.Name);
if FindFirst(Directory + Mask, faAnyFile - faDirectory, SR) = 0 then SearchedFiles := SearchedFiles + GetFileSize(Directory + SR.Name);
if FindFirst(Directory + Mask, faAnyFile - faDirectory, SR) = 0 then try
repeat
List.Add(Directory + SR.Name);
until FindNext(SR) <> 0;
finally
FindClose(SR);
end;
a := SearchedFiles;
if WithSubDirs then begin
Jetztschonmal danke für alle Antworten