Windows NTFS—按创建/修改日期查找文件的最快方法

Windows NTFS—按创建/修改日期查找文件的最快方法,windows,winapi,ntfs,Windows,Winapi,Ntfs,鉴于: NTFS卷 文件夹路径 一些日期时间值-我们称之为$date 搜索所有文件的最快方法是什么 ("last modification date" > $date) or ("creation date" > $date) 我只想搜索所有添加或修改的文件 出于性能原因,我不想对所有子文件夹进行递归爬网并读取每个文件属性。 出于技术原因(即UAC、NTFS文档),我希望避免解析\\.\$mft文件 是否有一些Windows API允许我以这种方式进行搜索 编辑:还有一个限制:

鉴于:

  • NTFS卷
  • 文件夹路径
  • 一些日期时间值-我们称之为$date
搜索所有文件的最快方法是什么

("last modification date" > $date) or ("creation date" > $date)
我只想搜索所有添加或修改的文件

出于性能原因,我不想对所有子文件夹进行递归爬网并读取每个文件属性。
出于技术原因(即UAC、NTFS文档),我希望避免解析\\.\$mft文件

是否有一些Windows API允许我以这种方式进行搜索


编辑:还有一个限制:
出于维护原因,我不想依赖索引服务。

如果windows索引服务已打开,并且您想要的文件已被索引,您可以很快使用找到您的文件。

我可以肯定地说,鉴于上述问题,没有其他现实的选择。FindFirst等人没有过滤机制。如果您一直关注USN日志,可能会有一些回旋余地,但除此之外,没有。

对不起,我忘了补充一点,我不想依赖索引服务。我会立即更新我的问题。在我看来,您的约束已经消除了所有途径。如果您不想使用索引服务,不想阅读MFT,也不想递归爬网,还有什么其他选项?@Luke好像我在要求一些与FindFirstFile类似的Win32 API,允许我按创建/修改日期进行筛选。据我所知,该功能在文件系统级别不受支持,因此您实际上没有任何其他选项。