FindFirst und viele Probleme
-
hi di ho c++ gemeinde
ich hab da leider ein großes problem mit dem ich nicht alleine fertig werde die suche habe ich auch schon ausgibig benutzt

und zwar versuche ich alle verzeichnisse aus einem bestimmten unterordner auszulesen und in einer combobox aufzulisten...
Damit bekomme ich zwar keine Fehlermeldung aber es funktioniert auch net
Varinate 1
TSearchRec *SucheOrdner1;//Zeiger TSearchRec SucheOrdner; String UnterOrdner = "\\skins\\"; if (FindFirst((ParamStr(0))+UnterOrdner,faDirectory, SucheOrdner) == 0) { do { if (ExtractFileExt(SucheOrdner1->Name) == 0) { ComboBox1->Items->Add(SucheOrdner1->Name); } } while (FindNext(SucheOrdner)== 0); FindClose(SucheOrdner); }Ich habe in anderen Beispielen gesehen das dort ohne zeiger gerabeitet wird was bei mir erst recht nicht nicht funktioniert..
ohne zeiger komme ich nicht an die methoden ran deswegen der mix weiter oben ( Varinate 1)Variante 2
TSearchRec *SucheOrdner1; String UnterOrdner = "\\skins\\"; if (FindFirst((ParamStr(0))+UnterOrdner,faDirectory, SucheOrdner1) == 0) { do { if (ExtractFileExt(SucheOrdner1->Name) == 0) { ComboBox1->Items->Add(SucheOrdner1->Name); } } while (FindNext(SucheOrdner1)== 0); FindClose(SucheOrdner1); }Fehlermeldungen der Variante 2
[C++ Warnung] FormMain.cpp(233): W8030 Temporäre Größe für Parameter 'F' in Aufruf von '_fastcall FindFirst(const AnsiString,int,TSearchRec &)' verwendet[C++ Fehler] FormMain.cpp(233): E2064 'TSearchRec &' kann nicht mit 'TSearchRec *' initialisiert werden.
[C++ Fehler] FormMain.cpp(233): E2342 Keine Übereinstimmung des Typs beim Parameter 'F' ('TSearchRec &' erwartet, 'TSearchRec *' erhalten)
Über eure hilfe wäre ich sehr dankbar

danke

-
Hallo
zur Pointer-version : Der Kompiler sagt dir ja schon, das kein Pointer erwartet wird, sondern eine Referenz. Außerdem hast du dem Pointer keine gültige Instanz zugewiesen.
zur Stack-variante : das ist schon richtiger... aber was soll das hier?!
if (ExtractFileExt(SucheOrdner1->Name) == 0)Schau dir doch mal bitte in der Builder-Hilfe an, was ExtractFileExt als Typ
zurückgibt!
Du willsr offenbar überprüfen, ob das aktuelle Element ein Verzeichnis ist. Das sollte aber ganz anders gemacht werden. Wie, das findest du hier in dem Thread der auch von heute ist.bis bald
akari