[Win32-api] Dateien mit Listenfenstern auslesen

Mr Apfelkuchen

Erfahrenes Mitglied
Hallo alle zusammen!
Ich habe ein Problem, denn ich möchte das mein Programm in einem Listenfenster alle Dateien angibt die in einem Ordner sind der sich im gleichen Verzeichnis wie die .exe befindet. Wenn man eine der Dateien mit einem Doppelklick auswählt soll der Inhalt eingelsen werden und als ein String gespeichert werden...

Die Probleme sind:
1. Ich bekomme die Dateien nicht im Listenfenster zu sehen weil ich nicht genau weiss welche Funktionen ich zur Ausgabe brauche.
2. Wie bekomme ich den Inhalt der Datei gelsen und speichere ihn.

Wenn jemand die Zeit findet mir zu antworten schonmal danke an denjenigen. :)

mfg Apfelkuchen
 
1) Benutze FindFirstFile,FindNextFile,FindClose. In der MSDN gibt es praktischen Beispielcode
2) Normale Datei-Operationen? Datei öffnen mit Lieblingscodeversion, fopen oder std::fstreams.
 
Hallo alle zusammen!
Ich habe ein Problem, denn ich möchte das mein Programm in einem Listenfenster alle Dateien angibt die in einem Ordner sind der sich im gleichen Verzeichnis wie die .exe befindet. Wenn man eine der Dateien mit einem Doppelklick auswählt soll der Inhalt eingelsen werden und als ein String gespeichert werden...

Die Probleme sind:
1. Ich bekomme die Dateien nicht im Listenfenster zu sehen weil ich nicht genau weiss welche Funktionen ich zur Ausgabe brauche.
2. Wie bekomme ich den Inhalt der Datei gelsen und speichere ihn.

Wenn jemand die Zeit findet mir zu antworten schonmal danke an denjenigen. :)

mfg Apfelkuchen

Bin ich richtig der Annahme das du eine ListBox meinst? Bei dieser gibt es eine
window message LB_DIR, beispielsweise so:
C:
SendMessage( hLb, LB_DIR, DDL_ARCHIVE | DDL_HIDDEN | DDL_READONLY | DDL_READWRITE, ( LPARAM )L"C:\\*.*" );

Näheres:
http://msdn.microsoft.com/en-us/library/bb775185(VS.85).aspx

Best wishes
FBIagent
 
Hmm also in dem Programmierhandbuch das ich benutzte ist genau die gleiche Funktion (SendMessage mit LB_DIR) drin, das Problem ist nur das die Funktion alleine nicht die ListBox füllt. Und ich einfach nich weiss wie ich das angehen soll... Wäre es möglich das mir einer ein kompletten Queltext schickt der eine ListBox mit Dateien füllt? Und evtl. auch zeigt wie ich überprüfe welche Datei der Benutzer ausgewählt hat...?

Danke euch aber auch schon für die beiden Beiträge...:)
 
Gut Danke... das Listen-Fenster füllt sich jetzt mit den Dateien aus dem aktuellen-Verzeichnis. Ich möchte aber das es nur Dateien zeigt die in einem Ordner im Aktuellen Verzeichnis sind zeigt.... Wie bekomm ich das hin?

Und ich weiss nich ganz wie ich herausfinde welche der aufgelisteten Dateien der Benutzer öffnen will...:eek:

Muss ich das mit
Code:
iIndex = SendMessage(hwndList, LBGETCURSEL, 0, 0);
machen oder wie geht das?
 
FBlagent du hattest das Beispiel mit:

SendMessage( hLb, LB_DIR, DDL_ARCHIVE | DDL_HIDDEN | DDL_READONLY | DDL_READWRITE, ( LPARAM )L"C:\\*.*" );

Das Problem ist das ich möchte das er in den Ordner im Aktuellen Verzeichnis geht, ich habs mit allen Varianten ausprobiert aber die gehen alle nicht:
Code:
SendMessage (hwndList,LB_DIR,DDL_READWRITE | DDL_DIRECTORY,(LPARAM)L"\\Ordnername\*.*");
SendMessage (hwndList,LB_DIR,DDL_READWRITE | DDL_DIRECTORY,(LPARAM)L"\Ordnername\*.*");
SendMessage (hwndList,LB_DIR,DDL_READWRITE | DDL_DIRECTORY,(LPARAM)L"..\Ordnername\*.*");
SendMessage (hwndList,LB_DIR,DDL_READWRITE | DDL_DIRECTORY,(LPARAM)L"..\Ordnername*.*");
usw.

Ich bin am verzweifeln und weiss einfach nicht was ich noch probieren kann. Bei msdn oder bei den Ausgaben von Google ist auch nie so ein Beispiel dabei oder eine Erklärung :( Warum halten das denn alle für Unwichtig? :p

mfg Apfelkuchen
 
Mein Gott ey Sry für diese Aussprache aber das man das nirgens findet ist schon doof^^ Aber selbst ist der Mann so und damit das mal irgendwo zufinden ist schreib ich das mal so das google das auch findet^^
Wenn man vom aktuellem Verzeichnis in Unterordner will muss man einfach nur diesen Pfad angeben:
Code:
SendMessage (hwndMapList,LB_DIR, iAttr, (LPARAM)L"Ordnername\\*.*");

Aber allen vielen Dank das ihr mir geholfen habt und ich gehe doch richtig in der Annahme das ich das mit fopen und den Funktionen aus C auslesen kann oder?

mfg Apfelkuchen
 

Neue Beiträge

Zurück