findfirstfile



  • hi
    ich habe schon folgenden code:

    #include <iostream>
    #include <windows.h>
    using namespace std;
    int main(){
    
    HANDLE fHandle;
    WIN32_FIND_DATA wfd;
    
    fHandle=FindFirstFile( "C:\\*", &wfd);
    
    do
    {
        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);
             }
            else
            {
                MessageBox(0,wfd.cFileName,"Folgende Datei gefunden:",0);
            }
        }
    }
    while (FindNextFile(fHandle,&wfd));
    FindClose(fHandle);
    
    return 0;
    }
    

    allerdings möchte ich das verzeichnis in dem gesucht wird über die console selber eingeben.

    int main(){
    char Directory[200];
    cin >> Directory;
    
    HANDLE fHandle;
    WIN32_FIND_DATA wfd;
    
    fHandle=FindFirstFile( Directory, &wfd);
    

    sobald ich was in die richtugn versuche, erhalte ich nur noch wirres zeug in der messagebox. könnt ihr mir da helfen?
    danke



  • Wird denn deine Variable Directory richtig eingelesen und was gibst du in der Konsole ein (dort brauchst z.B: nur einen \)?



  • ja lag an der eingabe in die konsole
    wenn man z.b. C:\\musik\*
    eingibt gehts


Log in to reply