【发布时间】:2009-09-24 03:46:01
【问题描述】:
我正在尝试让 FindFileFirst() Windows API 调用正常工作,但每次尝试都完全失败。我试过 ., C:\*.*, .txt, C:\.txt 但它甚至没有迭代目录名。不知道该尝试什么了。当我调用 GetLastError() 时,我得到了 ERROR_FILE_NOT_FOUND 2 (0x2)。感谢您提供的任何帮助。
HANDLE hFind;
LPWIN32_FIND_DATA FindFileData;
hFind = FindFirstFile("*.*", &FindFileData);
if(hFind == INVALID_HANDLE_VALUE)
{
printf("\nFindFirstFile failed (%u)\n",GetLastError());
return;
}
do
{
if(FindFileData->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
if(FindFileData->cFileName[0] != '.')
continue;
else
searchDir(makePath(path, FindFileData->cFileName));
}
printf("Found %s %s\n",
FindFileData->dwFileAttributes,FindFileData->cFileName);
FindClose(hFind);
}
while(FindNextFile(hFind, &FindFileData));
FindClose(hFind);
【问题讨论】: