Ordner aus einem Ordner auslesen
-
Hallo.
Ich habe einen Ordner und aus diesem will ich jetzt alle Unterordner auslesen. Das soll aber nur eine Stufe nach unten geschehen. Wenn ich also z.B. den Ordner "Test" habe, sollen nur die Ordner ausgelesen werden, die man nach dem draufklicken sieht, also "Test\cpp" oder Test\vb\, nicht aber "Test\cpp\classes" o.ä. Hoffe, ich habe die Frage gut formuliert und ihr könnt mir helfen.
-
Was los, Leute? Sonst habt ihr doch immer 'ne Antwort.
-
2 Stichwörter:
-CFileFind
-IsDirectory
-
Gut. Ich hab mich jetzt mal dran pobiert, kompilieren klappt auch, aber beim Ausführen bekomm ich immer 'ne Fehlermeldung. Hier mein Code:
CString Path, User; CFileFind ff; Path = Path + "\\Mozilla\\Profiles"; BOOL cont = ff.FindFile(Path + "\\*"); while(cont) { cont = ff.FindNextFile(); if(ff.IsDirectory()) { User = ff.GetFilePath(); m_ctrlUsers.AddString(User); } } ff.Close();
[ Dieser Beitrag wurde am 09.12.2002 um 17:20 Uhr von DocReggae editiert. ]
-
FindFirstFile(...) musst du als erstes aufrufen, sonst weis er nicht wo er starten soll.
Aber in der FAQ steht das übrigens auch...Devil
-
Original erstellt von devil81:
**FindFirstFile(...) musst du als erstes aufrufen, sonst weis er nicht wo er starten soll.
**Hä??
Wie als erstes aufrufen? Poste mal bitte den Code.
[ Dieser Beitrag wurde am 09.12.2002 um 21:55 Uhr von DocReggae editiert. ]
-
CFileFind kennt doch keine Funktion, die FindFirstFile() heißt. Oder meinst du was anderes?
-
Hallo !
Vielleicht liegt es an deiner Wildcard-Suche:
BOOL cont = ff.FindFile(Path + "\\*");
Probier doch mal aus ob es klappt, wenn du den Stern durch . ersetzt.
Tschüss
-
Nein, klappt leider auch nicht.
-
Vielleicht liegt es an dem relativen Pfad... (ohne genaue Laufwerksangabe) ?!?
So:CString Path, User; CFileFind ff; Path = Path + "\\Mozilla\\Profiles"; // warum "Path + ..." ? In Path ist nix drin BOOL cont = ff.FindFile(Path + "\\*.*");
sucht er in:
\\Mozilla\\Profiles\*.*[edit]
Evtl. noch mal auf das aktuelle Verzeichnis setzen (?!?):
SetCurrentDirektory(...);
[/edit][ Dieser Beitrag wurde am 10.12.2002 um 20:47 Uhr von isabeau editiert. ]
-
Ich würde tippen, dein Teil schmiert ab beim zusammensetzen des CStrings.
das + Zeichen scheint zwar zu klappen aber aus Erfahrung weiss ich das es beim 2. Aufruf immer Probleme macht.
Path.Format().
Versuchs mal