使用remove函数删除的文件在移除之后立即在FindFirstFile / FindNextFile循环中显示出来。 为什么是这样?

在我的应用程序中,使用remove函数删除一个文件。 如果在删除后立即要求文件夹中的文件列表,使用FindFirstFile / FindNextFile ,文件仍然显示在此列表中。 但是,如果等待几秒钟,文件就find了。

  • 这是Windows的已知行为(文件asynchronous删除?)
  • 或者FindFirstFile / FindNextFilecaching一些没有立即更新的信息?
  • 或者病毒扫描程序可以导致这种奇怪的行为?

获得一致结果的最佳方法是什么(删除后找不到文件)?

  • 删除后添加到睡眠呼叫?
  • 删除FindNextFile试之后使用FindFirstFile / FindNextFile ,直到文件真的被删除?
  • 使用不同的方法来删除文件? (可能是Windows特有的)