如题!不用MFC类?

解决方案 »

  1.   

    调用GetNextFile()应该可以把,把当前的目录就可以了阿
      

  2.   

    函数错了,引该是FindFirstFile(),然后用FindNextFile()。
    然后分析里面的WIN32_FIND_DATA结构应该就可以了吧(分离出你要的文件)
      

  3.   

    FindFirstFile(),FindNextFile怎样用???
      

  4.   

    //搜索其下所有子目录及文件.
    void SearchFolder( TCHAR * path )
    {
    WIN32_FIND_DATA FindFileData;
    HANDLE hFind;TCHAR filename[ MAX_PATH + 256 ];
    TCHAR pathbak[ MAX_PATH ];//复制初始用户选择目录
    strcpy( pathbak, path );//寻找第一个文件
    hFind = FindFirstFile ( "*.*", &FindFileData );//搜索所有文件及子目录
    do
    {
    if ( hFind != INVALID_HANDLE_VALUE )
    {
    //如果是当前目录或父目录,跳过
    if ( ! ( strcmp( FindFileData.cFileName, "." ) ) || ! ( strcmp( FindFileData.cFileName, ".." ) ) )
    {
    continue;
    }
      

  5.   

    //搜索其下所有子目录及文件.
    void SearchFolder( TCHAR * path )
    {
    WIN32_FIND_DATA FindFileData;
    HANDLE hFind;TCHAR filename[ MAX_PATH + 256 ];
    TCHAR pathbak[ MAX_PATH ];//复制初始用户选择目录
    strcpy( pathbak, path );//寻找第一个文件
    hFind = FindFirstFile ( "*.*", &FindFileData );//搜索所有文件及子目录
    do
    {
    if ( hFind != INVALID_HANDLE_VALUE )
    {
    //如果是当前目录或父目录,跳过
    if ( ! ( strcmp( FindFileData.cFileName, "." ) ) || ! ( strcmp( FindFileData.cFileName, ".." ) ) )
    {
    continue;
    }//恢复初始用户选择目录
    strcpy( path, pathbak );//列出所有发现的文件
    sprintf( path, "%s\\%s", path, FindFileData.cFileName );//如果 SetCurrentDirectory 成功的话,则它是一个目录,递归调用继续搜索子目录
    if ( ( SetCurrentDirectory( path ) ) )
    {
    SearchFolder( path );
    }//插入文件及路径名到列表框m_listbox_hwnd中
    SendMessage( m_listbox_hwnd, LB_ADDSTRING, 0, path ); //<--INSERT WHAT YOU WANT DONE HERE!
    }
    }
    while ( FindNextFile ( hFind, &FindFileData ) && hFind != INVALID_HANDLE_VALUE );FindClose ( hFind );
    }