Why my source doesn't work?Code:#include <iostream>
#include <string>
#include <Windows.h>
void printFile( HANDLE, WIN32_FIND_DATA );
int main()
{
HANDLE indice;
WIN32_FIND_DATA infoFile;
indice = FindFirstFile( "*.*", &infoFile );
printFile( indice, infoFile );
system( "pause" );
return 0;
}
void printFile( HANDLE index, WIN32_FIND_DATA fileInfo )
{
std::string directory;
// condizione per poter uscire dal ciclo
if ( index == INVALID_HANDLE_VALUE )
return;
else
{
std::cout << fileInfo.cFileName << std::endl;
// se è una directory
if ( GetFileAttributes( fileInfo.cFileName ) == FILE_ATTRIBUTE_DIRECTORY )
{
directory = fileInfo.cFileName;
directory += "\\*.*";
printFile( FindFirstFile( directory.c_str(), &fileInfo ), fileInfo );
}
// vado al prossimo file
if ( FindNextFile( index, &fileInfo ) )
printFile( index, fileInfo );
}
}