C 仅搜索目录

C 仅搜索目录,c,winapi,windows-7,C,Winapi,Windows 7,为什么它还输出“常规”文件,尽管函数显式地传递了FINDEX\u SEARCH\u OPS::FINDEX searchlimittodirectories选项? 注意:由于该标志是在2001年添加的,因此在此之前的任何系统(例如Windows 2000,基于旧版Samba构建的NAS设备)都不支持该标志陈雷蒙 int main(void) { HANDLE hFoundFile; WIN32_FIND_DATA foundFileData; SetCurr

为什么它还输出“常规”文件,尽管函数显式地传递了
FINDEX\u SEARCH\u OPS::FINDEX searchlimittodirectories
选项?

  • 注意:由于该标志是在2001年添加的,因此在此之前的任何系统(例如Windows 2000,基于旧版Samba构建的NAS设备)都不支持该标志陈雷蒙

    int main(void) 
    {   
    
        HANDLE hFoundFile;
        WIN32_FIND_DATA foundFileData;
    
        SetCurrentDirectory(TEXT("C:\\"));
    
        hFoundFile = FindFirstFileEx(TEXT("*"),FINDEX_INFO_LEVELS::FindExInfoBasic,&foundFileData ,FINDEX_SEARCH_OPS::FindExSearchLimitToDirectories ,NULL , NULL);
    
        do
        {
            wprintf(TEXT("%s\n"),foundFileData.cFileName);
    
        }
        while(FindNextFile(hFoundFile,&foundFileData));
    
        system("Pause");
        return 0;
    }
    
在您的代码中:

WIN32_FIND_DATA FindFileData;
do {

if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)




}
while(FindNextFile(hFindFile, &FindFileData));

  • 注意:由于该标志是在2001年添加的,因此在此之前的任何系统(例如Windows 2000,基于旧版Samba构建的NAS设备)都不支持该标志陈雷蒙

    int main(void) 
    {   
    
        HANDLE hFoundFile;
        WIN32_FIND_DATA foundFileData;
    
        SetCurrentDirectory(TEXT("C:\\"));
    
        hFoundFile = FindFirstFileEx(TEXT("*"),FINDEX_INFO_LEVELS::FindExInfoBasic,&foundFileData ,FINDEX_SEARCH_OPS::FindExSearchLimitToDirectories ,NULL , NULL);
    
        do
        {
            wprintf(TEXT("%s\n"),foundFileData.cFileName);
    
        }
        while(FindNextFile(hFoundFile,&foundFileData));
    
        system("Pause");
        return 0;
    }
    
在您的代码中:

WIN32_FIND_DATA FindFileData;
do {

if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)




}
while(FindNextFile(hFindFile, &FindFileData));