c++ - 如何在不使用目录的情况下在磁盘上查找文件

标签 c++ windows winapi

我正在编写一个 C++ 应用程序,它将监视以确保磁盘上的某些文件存在。我研究了 ReadDirectoryChanges 和 FindFirstFile/FindNextFile 函数以及一个简单的轮询解决方案。我的问题是,如果父目录的名称更改或文件被重命名,我无法判断。我不想查看文件的父目录以进行名称更改。有没有办法在不使用目录的情况下判断磁盘上是否存在文件?有人告诉我这可以使用操作系统本身的内存地址,但我还没有找到任何东西。也许我只是不知道我在找什么?任何帮助将不胜感激。

最佳答案

您可以使用 OpenFileById() function 打开一个已知文件,该文件由文件 ID 或 GUID 标识。 .

另见 "If you want to use GUIDs to identify your files, then nobody's stopping you"在 Raymond Chen 的博客上。

关于c++ - 如何在不使用目录的情况下在磁盘上查找文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29712371/

相关文章:

c++ - 使用terminfo的终端颜色?

PHP 字符串到 "unsigned long"(来自 C++)

c++ - 如何使用 C API 而不是实际知道 Clang 的书面 var 类型?

c++ - 有条件的 Windows 管理员提示

java - 是否有跨平台命令可以打印一些内容到控制台?

c++ - 程序不会在 exit() 函数之前打印行?

windows - 如何防止 Wix 在卸载时删除注册表项?

c++ - Win32/MFC 从客户端矩形获取窗口矩形

c# - 从本地系统服务调用 WTSEnumerateSessions

c - 在 Windows 上生成带有 .ico 扩展名的临时文件名