FindFirstFile Funktion



  • Hallo,
    die FindFirstFile Funktion verursacht in meinem Programm einen Laufzeitfehler, ebenso wenn ich die Beispiele zur Verwendung dieser Funktion ausführe. Das ist der Code:

    char				chPath[MAX_PATH]	= "";
    	LPWIN32_FIND_DATA	lpFindFileData		= NULL;
    	HANDLE				hFindFile			= NULL;
    
    	GetWindowsDirectory( chPath, MAX_PATH );
    	sprintf( chPath, "%s\\*.*", chPath );
    
    	hFindFile = FindFirstFile( chPath, lpFindFileData );
    

    Wenn ich als erstes Argument der Funktion eine NULL eintrage läuft das Programm fehlerfrei, allerdings passiert dann auch nichts.



  • GuEsT_v0.4alpha schrieb:

    Hallo,
    die FindFirstFile Funktion verursacht in meinem Programm einen Laufzeitfehler, ebenso wenn ich die Beispiele zur Verwendung dieser Funktion ausführe. Das ist der Code:

    char				chPath[MAX_PATH]	= "";
    	LPWIN32_FIND_DATA	lpFindFileData		= NULL;
    	HANDLE				hFindFile			= NULL;
    
    	GetWindowsDirectory( chPath, MAX_PATH );
    	sprintf( chPath, "%s\\*.*", chPath );
    
    	hFindFile = FindFirstFile( chPath, lpFindFileData );
    

    Wenn ich als erstes Argument der Funktion eine NULL eintrage läuft das Programm fehlerfrei, allerdings passiert dann auch nichts.

    Du hast keinen Speicher für WIN32_FIND_DATA bereitgestellt.

    char				chPath[MAX_PATH]	= "";
    	WIN32_FIND_DATA	FindFileData;
    	HANDLE				hFindFile			= NULL;
    
    	GetWindowsDirectory( chPath, MAX_PATH );
    	sprintf( chPath, "%s\\*.*", chPath );
    
    	hFindFile = FindFirstFile( chPath, &FindFileData );
    


  • Ups,
    Ich hab den Fehler jetzt gefunden, die Funktion stellt garkeinen Speicher für die WIN32_FIND_DATA zu Verfügung, deshalb verursacht es einen Fehler wenn ich den LPWIN32_FIND_DATA Zeiger zu übergeben.



  • Wenn mich nciht alles täuscht, musst Du FindFirstFile als zweiten Parameter die Adresse einer existierenden Variable vom Typ WIN32_FIND_DATA übergeben, in der dann das Suchergebnis gespeichert wird. Du übergibst ja im Prinzip einfach nur NULL an die Funktion.

    Edit: Zu langsam



  • Asgard schrieb:

    Edit: Zu langsam

    Oh Nein, wie schrecklich! 😉



  • masterofx32 schrieb:

    Asgard schrieb:

    Edit: Zu langsam

    Oh Nein, wie schrecklich! 😉

    Einfach nur peinlich. 👎 👎


Anmelden zum Antworten