gpt4 book ai didi

c++ - 如何在不触及该目录中的文件的情况下查找文件夹更改(使用 Windows 和 C++)

转载 作者:行者123 更新时间:2023-11-28 02:43:52 25 4
gpt4 key购买 nike

好吧,我被这个问题困住了,我有几个问题:

  1. 如何在不触及文件的情况下检查文件夹是否已被修改?“上次修改时间”在创建/删除文件、创建/删除子文件夹时发生变化,但在修改文件时(例如,当文件大小发生变化时)不会发生变化。

  2. 如果文件大小发生变化,则文件夹大小也会发生变化,但没有 API 可以在不接触文件的情况下在 Windows 中查找文件夹大小。

    假设我给每个文件夹一些值,现在当它的大小改变时,默认值会改变吗? (一个预期的例子可能是,它的哈希值?)或者当文件夹被修改时,windows 中默认会发生什么变化? (除了它的大小。)

提前致谢。

最佳答案

如果要监视文件夹的更改,可以使用 API ReadDirectoryChangesW .但是,如果您想离线检查它,则需要扫描整个目录并检查每个文件的修改日期、文件夹创建日期等。将其与上次扫描时间进行比较。

您可以在发现至少一处更改时停止扫描,以节省扫描时间。

如果您的应用程序具有管理员权限,那么您可以通过 reading the NTFS change journal 找到文件夹中的更改。 .

关于c++ - 如何在不触及该目录中的文件的情况下查找文件夹更改(使用 Windows 和 C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25054689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com