ich mal wieder ein so richtig schön sinnloses prob:
ich habe folgenden Code der immer reibungslos gelaufen ist.
Code:
constructor Tskinmanager.load;
var r,a:integer;
skin: TSearchRec;
begin
folder:='skins';
a:=0;
r:=FindFirst(folder, faAnyFile, skin);
while r =0do
begin
SetLength(skins,length(skins)+1);
skins[a]:=folder+''+skin.Name;
r:=FindNext(skin);
a:=a+1;
end;
FindClose(skin);
end;
aber dann habe ich im Verzeichnis "skins" eine neue datei erstellt und jetzt bekomm ich nuroch eine datei, und die heißt genau so wie das Verzeichnis also in dem fall ist dann skins[0]='skins\skins'.
kann mir vieleicht jemand sagen woran das liegen könnte?
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Der erste Parameter von FindFirst darf nicht nur einfach den Ordnernamen enthalten, sondern (wenn du Dateien suchst) die passende Suchmaske, also z.B. '*.txt'.
Ich denke das Problem ist das der bei fAnyFile auch Verzeichniss mit nimmt,
nur hat Delphi die dumme angewohnheit die Verzeichnisse "." und "..", also diese lustigen alten Dos Relikte noch mit zu nehmen. Das kann richtig häßliche Probleme bringen. Deshalb am besten noch eine Abfrage mit rein bauen :
Mitglieder in diesem Forum: Google [Bot] und 8 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.