FindFirstFile得到一个句柄,
循环FindNextFile直到返回ERROR_NO_MORE_FILES. 

解决方案 »

  1.   

    知不知道CFindFile类,或者用Win32 SDK FindFirstFile(),FindNextFile(),不过要用到
    WIN2_FIND_FILE结构
      

  2.   

    这个函数包括搜索子目录,要是你不要搜的话可以自已修改
    BOOL FindIntheDirect(LPCTSTR lpDirect)
    {
    TCHAR szDirect[MAX_PATH];
    WIN32_FIND_DATA winfd;
    _stprintf(szDirect,_T("%s\\*"),lpDirect);
    HANDLE hFind = FindFirstFile(szDirect,&winfd);
    while(FindNextFile(hFind,&winfd))
    {
    if(winfd.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY)//搜子目录
    {
    if(_tcsicmp(winfd.cFileName,_T(".."))!=0&&_tcsicmp(winfd.cFileName,_T("."))!=0)
    {
    char szNextDirect[MAX_PATH];
    _stprintf(szNextDirect,_T("%s\\%s"),lpDirect,winfd.cFileName);
    FindIntheDirect(szNextDirect);
    }
    }
    else
    {
                              winfd.cFileName;//这就是你要的 :)
    }
    }
    FindClose(hFind);
    return FALSE;
    }