我不确定是否已经提出这个问题,我似乎无法找到它。
当我正在进行文件夹内容枚举时,您通常会知道:
FindFirstFile();
do
{
}while(FindNextFile());
如果我仍然在do/while
循环中,文件夹的内容会发生变化,会发生什么?比如,添加,更改或删除新文件或文件夹。这是否反映在FindNextFile
返回的结果中?
答案 0 :(得分:4)
快速测试案例显示FindFirstFile不会将结果缓存在Windows 7上运行的本地文件系统上。但是一旦调用FindNext,结果就会被缓存(不完全,只是一点点)。但由于Windows SDK中没有记录,因此必须将其视为实现细节,可随时更改。因此,请以不依赖于此行为的方式编写代码。