c++ - 拦截windows打开的文件

标签 c++ windows winapi events file-io

我正在尝试制作一个可以拦截文件打开过程的小程序。

目的是当用户双击给定文件夹中的文件时,windows会通知软件,然后它处理该请求并将文件的数据返回给windows。

也许会有另一种解决方案,例如监控打开消息并强制 Windows 在程序准备文件内容时等待。

此概念的一个应用可能是以对用户透明的方式管理文件的解密。 在这种情况下,加密文件将在磁盘上,当用户打开它(双击它或使用记事本等应用程序)时,后台进程将拦截该打开事件,对文件进行解密并提供内容该文件的请求应用程序。

这是一个有点奇怪的概念,可能类似于“中间人”的网络概念,但使用的是文件而不是网络数据包。

感谢阅读。

最佳答案

覆盖从任何程序打开的所有情况的最佳方法是通过 file system filter driver .不过,这可能对您的需求来说太复杂了。

关于c++ - 拦截windows打开的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1109564/

相关文章:

c++ - Visual Studio 字符集 'Not set' 与 'Multi byte character set'

c++ - 在链表上实现随机访问迭代器

c++ - OpenCV - 从相机设备获取像素数据

windows - 为什么我不能在 golang 中写一个这样的 windows 文件路径?

c++ - 枚举窗口时出现问题

c - 通过 FSCTL_LOCK_VOLUME win32 api 控制代码锁定设备后使用设备吗?

c++ - 将 NT 文件时间转换为 Win32 时间

c++ - 使用 OpenMP 4.0 (gcc 4.8.4) 而不是 OpenMP 3.1 (gcc 4.9.2) 时速度会降低

c++ - 根据平台目标修改 OriginalFilename 字符串

python - 如何让类在没有被调用的情况下不运行?