Hi,
Nach langer Zeit als stiller Mitleser habe ich mich nun regestriert und sage
Hallo zur Community!
Ich habe hier im Forum eine procedure gefunden, die mir Ordner innerhalb eines anderen auflistet:
Delphi-Quellcode:
Procedure FindDirs(DirPath:
String; StringList:TStrings; Recurse: Boolean = false);
var SR:TSearchRec;
i:integer;
begin
if AnsiLastChar(DirPath)^ <> '
\'
then DirPath:=DirPath + '
\';
try
{ im angegebenen Verzeichniss nach Unterordnern suchen -- }
if FindFirst(DirPath+'
*.*',faDirectory,SR)=0
then
repeat
{ wenn SR ein Ordner ist und nicht '.' und '..' heißt, dann... }
if ((SR.Attr
and faDirectory)<>0)
and (SR.
Name <> '
.')
and (SR.
Name <> '
..')
then
begin
{ ...füge den Ordner der StringList (z.B. einer Listbox(.Items)) hinzu }
StringList.Add(DirPath+SR.
Name);
// s.u. Erläuterung
{ wenn Recurse = true, dann durchsuche den aktuellen Ordner (SR.Name) nach Unterordnern }
if Recurse
then FindDirs(DirPath+SR.
Name,StringList,true);
end;
until FindNext(SR) <> 0;
// wenn keine Unterordner mehr gefunden wurden, Suche beenden
finally
FindClose(SR);
// Search Handle schließen, da es nicht mehr gebraucht wird
end;
end;
//Aufruf:
FindDirs('
C:',memo1.Lines);
Ich lass mir die einzelnen Verzeichnisse zeilenweiße in ner Memo ausgeben!
Soweit alles klar!
Nun wollte ich die einzelnen Zeilen in ein Array tun:
Delphi-Quellcode:
var
dirs:Array of string;
i: Integer;
begin
for i:= 0 to Memo1.lines.count do
dirs[i]:=memo1.Lines[i];
end;
Aber es kommt immer eine Meldung wegen Zugriffsverletzung!
Wie bekomme ich die Zeilen des Memos in mein array?
mfg
FordPerfekt