如何监视某个进程的磁盘文件操作

winterxu416 2011-03-02 11:08:34
我想记录某个进程对磁盘文件的操作,比如:它打开了哪个文件、关闭了哪个文件?
应该如何实现,多谢各位。
...全文
188 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lactoferrin 2011-03-02
  • 打赏
  • 举报
回复
api hook
kye_jufei 2011-03-02
  • 打赏
  • 举报
回复
因此:你得掛這個勾子:接受与计算机训练有关的消息(WH_CBT)
kye_jufei 2011-03-02
  • 打赏
  • 举报
回复
勾子的类型
----1. 按事件分类,有如下的几种常用类型
----(1) 键盘勾子和低级键盘勾子可以监视各种键盘消息(WH_KEYBOARD)。

----(2) 鼠标勾子和低级鼠标勾子可以监视各种鼠标消息(WH_MOUSE)。

----(3) 外壳勾子可以监视各种Shell事件消息。比如启动和关闭应用程序(WH_SHELL)。

----(4) 日志勾子可以记录从系统消息队列中取出的各种事件消息(WH_JOURNALRECORD,WH_JOURNALPLAYBACK)。

----(5) 窗口过程勾子监视所有从系统消息队列发往目标窗口的消息(WH_CALLWNDPROC)。

----(6) 监视已被目标窗口函数处理的消息(WH_CALLWNDPROCRE)。

----(7) 接受与计算机训练有关的消息(WH_CBT).

----(8) 应用程序前台空闲时调用的钩子(WH_FOREGROUNDIDLE).

----(9) 监视加入到消息队列中的消(WH_GETMESSAGE).

----(10)监视由对话框消息菜单或者滚动条输入事件产生的消息(WH_MSGFILTER).

此外,还有一些特定事件的勾子提供给我们使用如:WH_MOUSE_LL,WH_KEYBOARD_LL,WH_SYMSGFILTER等等.
bdmh 2011-03-02
  • 打赏
  • 举报
回复
挂WH_CBT钩子

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧