Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

Vertzeichnisstructur auslesen und anzeigen

Oli_1977 / 15 Antworten / Flachansicht Nickles

Hallo.

Ich habe folgendes Problem. In meinem Programm kann man bis jetzt eine Dateiendung und ein Laufwerk wählen. Nun will ich im gewählten Laufwerk die Ordner anzeigen lassen. Wählt man einen angezeigten Ordner sollen die Unterordner oder alle Datei mit der gewünschten dateiendung angezeigt werden.

Die Verzeichnisstruktur soll in einem Element des Types CTreeCtrl angezeigt werden. Das einlesen des Laufwerkes mache ich mit der Finktion CFileFind::FileFind.

Hat irgend jemand damit schon Erfahrungen gesammeltund kann mit Tipps oder Ratschläge geben?

Bin für jeden Hinweis bbzw. Tip dankebar, ich weiß langsam nicht mehr weiter.

Cu Oli

bei Antwort benachrichtigen
Oli_1977 thomas woelfer „nur mal so hingeschrieben und nicht gestestet: tut aber prinzipiell das was du...“
Optionen

Sorry , wenn ich nerve. Es ist aber wichtig.
Ich habe es jetzt soweit abgeändert.

void CDateiWaehlen::Findverzeichnis(char* drive)
{
//root des trees ermitteln
(1) HTREEITEM *pItem = m_Baumstruktur.GetRootItem();

//suche starten
FindRecursivVerzeichnis(drive,*pItem);
}

void CDateiWaehlen::FindRecursivVerzeichnis( char *pszDir, HTREEITEM pNode)
{

CFileFind finder;
bool bWorking = finder.FindFile("*.*");
while (bWorking)
{
bWorking = finder.FindNextFile();
if (finder.IsDots())
{
//tue nichts
}else
{
if ( finder.IsDirectory())
{
HTREEITEM *item = new HTREEITEM(); //Todo mit Info füllen
(2),(3) pNode->AddChild( item);
(4) FindRecursivVerzeichnis(*finder.GetFilePath(), pNode);

}else
{
HTREEITEM *item = new HTREEITEM(); //Todo mit Info füllen
(5)(6) pNode->AddChild( item);

}
}
}
}

Meine Fehler sind in kurzen Stichpunkten:
(1) struct _TREEITEM *' kann nicht in 'struct _TREEITEM ** ' konvertiert werden
(2) Verwendung des undefinierten Typs "_TREEITEM"
(3) Der linke Teil von '->AddChild' muss auf Klasse/Struktur/Union zeigen
(4)FindRecursivVerzeichnis' : Konvertierung des Parameters 1 von 'const char' in 'char *' nicht moeglich
(5)= (3)
(6) =(2)


Ich weiß es ist viel, aber ich sehe voll auf dem Schlauch.

Cu
Oli

bei Antwort benachrichtigen
achso thomas woelfer
achso Oli_1977