Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Alle Dateien in einem Verzeichnis finden (war: Immer nur Ärger!!!!)

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
07.11.2007, 09:41 Uhr
Poe



Mit dem untenstehenden Programm möchte ich alle Dateien in einem Verzeichnis finden und den Dateinamen auf dem ausgeben.
Ich bekomme bei der Ausführung nur ein '-%>' angezeigt....
Jemand ne Ahnung warum?
Brauche dringen eure Hilfe dazu!!!
Danke schonmal im Voraus!!!

C++:
#include <windows.h>
#include <cstdio>
#include <fstream>
#include <iostream>

using namespace std;

int main ()

{

HANDLE fHandle;
WIN32_FIND_DATA wfd;

fHandle=FindFirstFile("C:\Osnabrueck\DEA\2007\09\\*",&wfd);

do
{
// Eintrag nur behandeln, wenn es nicht . oder .. ist (werden nur bei Unterverzeichnissen mit zurückgeliefert)

if (!( (wfd.cFileName[0]=='.') && ( (wfd.cFileName[1]=='.' && wfd.cFileName[2]==0) || wfd.cFileName[1]==0 ) ))
{
if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
MessageBox(0,wfd.cFileName,"Folgendes Verzeichnis wurde gefunden:",0);
// Datei ist keine, sondern ein Verzeichnis...
// Hier könnte man dasselbe nochmal machen, um auch die
// Unterverzeichnisse zu scannen  
}
else
{
  cout << wfd.cFileName << endl;  //Namen der Dateien ausgeben
  cin.get();
}
}
}
while (FindNextFile(fHandle,&wfd));
FindClose(fHandle);

}



Dieser Post wurde am 07.11.2007 um 13:25 Uhr von Guybrush Threepwood editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
07.11.2007, 10:37 Uhr
0xdeadbeef
Gott
(Operator)



C++:
fHandle=FindFirstFile("C:\Osnabrueck\DEA\2007\09\\*",&wfd);


muss

C++:
fHandle=FindFirstFile("C:\\Osnabrueck\\DEA\\2007\\09\\*",&wfd);


heißen.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
07.11.2007, 12:34 Uhr
~poe
Gast


Cool stimmt, danke!!
Gibt es noch ne möglichkeit den Pfad Variabel zu gestalten?
Also per Fenster? In Visual Basic for Applications heißt das 'application.open...' oder so ähnlich, glaube ich.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
07.11.2007, 13:24 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Mit SHBrowseForFolder

PS: Bitte das nächste mal einen vernüftigen Threadtitel benutzen. Hab den mal angepasst.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
07.11.2007, 14:03 Uhr
Poe



Sorry, mach ich.

Mit SHBrowseForFolder
klappt es nicht so, quasi gar nicht.
Ich muss gestehen ich bin nicht der hellste Programmierer, wie würde ich denn damit die Pfadangabe im unteren Besispiel ersetzen?


C++:
int main ()

{
    
HANDLE fHandle;
WIN32_FIND_DATA wfd;

fHandle=FindFirstFile("C:\\Osnabrueck\\DEA\\2007\\09\\*",&wfd);


 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
07.11.2007, 14:13 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)



Zitat von Poe:
Mit SHBrowseForFolder
klappt es nicht so, quasi gar nicht.


Das ist keine ausreichende Fehlerbeschreibung um dir helfen zu können
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
07.11.2007, 14:31 Uhr
Poe



Was muss ich da denn an die Pfadangabe übergeben, bzw, was muss ich noch deklarieren oder zuweisen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
07.11.2007, 14:49 Uhr
xXx
Devil


Ehm du musst dir erstmal in der MSDN Library angucken, wie SHBrowseForFolder aufgerufen wird. Wenn die Funktion erfolgreich war, steht in der entsprechenden Struktur dann die Pfadangabe.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: