Aussehen tut es bei mir so (beide Prozeduren natürlich oben deklariert).
Delphi-Quellcode:
procedure TVersionNumberViewer.GetFilesInDirectory(Directory: string; const Mask: string;List: TStrings;WithSubDirs, ClearList: Boolean);
procedure TVersionNumberViewer.ScanDir(const Directory: string);
var
SR: TSearchRec;
begin
if FindFirst(Directory + Mask, faAnyFile and not faDirectory, SR) = 0 then try
repeat
List.Add(Directory + SR.Name)
until FindNext(SR) = 0;
finally
FindClose(SR);
end;
if WithSubDirs then begin
if FindFirst(Directory + '*.*', faAnyFile, SR) = 0 then try
repeat
if ((SR.attr and faDirectory) = faDirectory) and
(SR.Name = '.') and (SR.Name = '..') then
ScanDir(Directory + SR.Name + '');
until FindNext(SR) = 0;
finally
FindClose(SR);
end;
end;
end;
begin
List.BeginUpdate;
try
if ClearList then
List.Clear;
if Directory = '' then Exit;
if Directory[Length(Directory)] = '' then
Directory := Directory + '';
ScanDir(Directory);
finally
List.EndUpdate;
end;
end;
Fehlermeldungen gibt es bei der zweiten Prozedur folgende:
';' erwartet, aber '.' gefunden
'=' erwartet, aber ')' gefunden
Außerdem erkennt er die Parameter der ersten Prozedur im Code nicht.
Er erkennt "List", "Mask" und "WithSubDirs" nicht.