Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Kompletten Pfad ermitteln!

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
12.11.2004, 13:28 Uhr
leon_reif



Hallo zusammen,

ich würde gerne wissen, wie man den kompletten Pfad zur eine Datei ermitteln kann!
Gibt eine API dafür, also ohne MFC-Library?

Ich brauche den Pfad zur Datei "wData.cFileName" -> Ctmp\test\dateiname.txt

Hier ist ein Beispielprogramm:



C++:
nint
main(int argc, char *argv[])
{
  HANDLE              hFind;
  WIN32_FIND_DATA     wData;
  char                zPath[] = "C:\\tmp\\*";
  BOOL found = TRUE;
  
  printf (" Auszugebendes Laufwerk: %s\n", zPath);

  hFind = FindFirstFile( zPath, &wData );
  
  while(hFind != INVALID_HANDLE_VALUE && found)
  {
    if((strcmp(wData.cFileName, ".") !=0) && (strcmp(wData.cFileName, "..") !=0))
    {  
      if(wData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
        cout << "Verzeichnis: " << wData.cFileName << endl;
      else
      {
        cout << "Dateiname: " << wData.cFileName << endl;
        //cout << "FullPath: " << ??
      }
    }
    found = FindNextFile(hFind, &wData);
  }
  
  FindClose( hFind );

  while (getch() != 'q');

  return (0);
}

Vielen Dank im Voraus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.11.2004, 13:33 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Du hast den Pfad doch in zPath stehen?!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.11.2004, 13:49 Uhr
leon_reif



Das ist wahr, aber unter C:\tmp gibt viele Unterverzeichnisse.

Wenn das Programm eine Datei unter C:\tmp\test findet, dann will ich den Pfad
C:\tmp\test haben.


Bearbeitung von Windalf:

hab mal die smilies rausgekickt


Dieser Post wurde am 12.11.2004 um 13:51 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.11.2004, 13:59 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Es werden aber keine Unterverzeichnisse durchsucht.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.11.2004, 14:10 Uhr
leon_reif



Ich dachte, dass die Funktion "FindFirstFile" rekursiv arbeitet oder ?

Wie kann ich sonst die Unterverzeichnisse suchen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.11.2004, 15:39 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Nein das musst du selber machen.

Ich hab hier irgendwo mal eine Funktion dazu gepostet, musst du mal die Suchfunktion verwenden.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
12.11.2004, 15:54 Uhr
leon_reif



Ich danke Dir ;-)

Ich rufe jetzt meine Funktion rekursiv auf, falls ich ein Verzeichnis finde.
 
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: