Hi,
Nach langer Zeit als stiller Mitleser habe ich mich nun regestriert und sage
Hallo ![Hello](images/smilies/wave.gif)
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