如何在不触及该目录中的文件的情况下找到文件夹更改(使用Windows和c++)
How to find folder changes without touching the files in that directory (Using Windows and C++)
我被这个困住了,我有几个问题:
-
如何在不碰文件的情况下检查文件夹是否被修改?
当文件被创建/删除时,当子文件夹被创建/删除时,"Last Modified"会改变,但当文件被修改时(例如,当它的大小改变时)不会改变。
如果文件大小发生变化,那么文件夹大小也会发生变化,但是没有API可以在不触及文件的情况下在Windows中找到文件夹大小。
假设我给每个文件夹设置了一些值,现在当它的大小改变时,默认值会改变吗?(一个预期的例子可能是,它的哈希值?)或者当一个文件夹被修改时,Windows默认会改变什么?
如果您想监视一个文件夹的更改,您可以使用api ReadDirectoryChangesW。但是,如果您想脱机检查它,则需要扫描整个目录&检查每个文件的修改日期,文件夹创建日期等。与上次扫描时间比较。
当您发现至少有一个更改时,您可以停止扫描,以节省扫描时的时间。
如果你的应用程序有管理员权限,那么你可以通过读取NTFS更改日志来查找文件夹中的更改。
相关文章:
- GetShortPathName在网络驱动器上使用中文文件夹时失败
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- 使用 Powershell 命令将 cpp 文件的文件夹编译为 GNU 的 g++
- 无法使用 CMake 从其他文件夹添加源文件
- 使用Boost文件系统C++将具有特定扩展名的文件的名称保存在特定文件夹中
- 如何使用Windows API C++更改已创建的文件夹/目录安全权限
- Windows 后台服务(系统配置文件)无法使用 C++ 访问 win 10 上的用户 appData 文件夹?
- 如果在VC6中使用打开功能,如何选择文件夹?
- 使用g++包含来自不同文件夹的头文件
- 卡在使用dirent.h查找子文件夹C++中的所有文件
- 使用内置的Windows方法获取文件夹的内容
- 如何将图像文件夹添加到CMake项目以便在c ++可执行文件中使用这些图像?
- 使用文件对话框选择包含特定文件类型的文件夹?
- 如何使用 c++ 创建对"everyone"具有共享访问权限的文件夹
- C Visual Studio代码不使用工作区中的单个文件夹编译
- 使用qfilesystemmodel和qsortFilterProxymodel子类过滤特定文件夹的文件
- 使用GCC的C makefile - 从子文件夹列表中生成源文件列表
- 我无法使用Win32从文件夹中加载图像
- 如何使用 Win API 获取文件夹中的文件列表(带过滤器)
- 如何压缩文件夹使用 lzma sdk