FindFirstFile函数在目录中搜索名称与指定文件名匹配的文件。FindFirstFile检查子目录名称以及文件名。
HANDLE FindFirstFile(
LPCTSTR 【lpFileName】, | //指向要搜索的文件名称的指针 |
LPWIN32_FIND_DATA 【lpFindFileData】 | //指向返回信息的指针 |
); |
参数
【lpFileName】
Windows 95:指向一个空值终止的字符串,指定一个有效的目录或路径和文件名,可以包含通配符(*和?)。该字符串不得超过MAX_PATH个字符。
指向一个空值终止的字符串,指定一个有效的目录或路径和文件名,可以包含通配符(*和?)。
对于MAX_PATH字符的路径,默认字符串大小限制。此限制与FindFirstFile功能如何解析路径有关。通过调用宽(W)版本FindFirstFile并在路径前面加上“\\\\?”,应用程序可以超越此限制并发送长度超过MAX_PATH字符的路径。“\\\\?\\”告诉功能关闭路径解析;它允许使用比MAX_PATH长的路径与FindFirstFileW一起使用。这也适用于UNC名称。“\\\\?\\”作为路径的一部分被忽略。例如,“\\\\?\\ C:\\ myworld \\ private”被视为“C:\\ myworld \\ private”,“\\\\?\\ UNC \\ bill_g_1 \\ hotstuff \\ coolapps”被视为“\\\\ bill_g_1 \\ hotstuff \\ coolapps”。
【lpFindFileData】
指向WIN32_FIND_DATA结构的接收有关找到的文件或子目录的信息。该结构可用于以后调用FindNextFile或FindClose函数来引用该文件或子目录。
返回值
如果函数成功,则返回值是在随后调用FindNextFile或FindClose中使用的搜索句柄。
如果函数失败,返回值为INVALID_HANDLE_VALUE。要获取扩展错误信息,请调用GetLastError.
备注
FindFirstFile函数打开搜索句柄,并返回有关名称与指定模式匹配的第一个文件的信息。搜索句柄建立后,您可以使用FindNextFile功能来搜索与同一模式相匹配的其他文件。当不再需要搜索句柄时,使用FindClose功能关闭它。
此函数仅按名称搜索文件;它不能用于基于属性的搜索。
也可以看看
FindClose, FindNextFile, GetFileAttributes, SetFileAttributes, WIN32_FIND_DATA