CreateFile打开文件夹注意点

只说一个平常大家都未注意到的问题:

第一步 打开文件夹D:\\test获取句柄hDir   //FILE hDir = CreateFile("D:\\test",...);/*打开文件夹*/

第二步 在D:\\test中创建文件1.txt并写入buffer,后close

第三步 通过hDir查找1.txt,但查找不到。
(假如文件系统为NTFS,通过test的文件记录找索引,读取出的buffer也无1.txt相关信息)


遇到这种情况,需要先CloseHandle(hDir),再重新打开文件夹D:\\test。可能与windows内部缓存有关,如果有了解其中原理的大佬麻烦评论区见。

你可能感兴趣的:(c++,windows)