关于单个文件的监控

LIFEForSoft 2008-05-22 02:12:01
知道有这两个函数用于监控文件目录变化
ReadDirectoryChangesW与FindFirstChangeNotification,
但传入参数似乎都是完整的目录名(如:"D:\\")而不是单个文件名(如: "D:\\a.txt")
现在的需求是已经得到需要监控的文件名,如果再用这两个函数的话,参数还需改成监控文件所在的目录名,有点舍近求远的味道?

查阅网上相关资料,说还可以用SHChangeNotifyRegister来做,之前未使用过这个函数,请高人提供个例子(不要再贴MSDN上相关的东西了,谢谢)。

另外:是否还是我ReadDirectoryChangesW与FindFirstChangeNotification函数没用好,其实也可以实行单个文件变化(如:"d:\\a.txt"),请高人提供例子,谢谢.
...全文
149 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
LIFEForSoft 2008-05-31
  • 打赏
  • 举报
回复
没招,最后还是回到监控目录上面去,再加过滤了!

谢谢各位的支持!
Aeolia_Tao 2008-05-23
  • 打赏
  • 举报
回复
HOOK SHFileOperation然后判断文件名是不是你需要的
不知道行不行
cnzdgs 2008-05-23
  • 打赏
  • 举报
回复
我也理解错LZ的意思了。
ReadDirectoryChangesW只能监视目录,直接监视文件的方法目前还没想到。
LIFEForSoft 2008-05-23
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 Aeolia_Tao 的回复:]
HOOK SHFileOperation然后判断文件名是不是你需要的
不知道行不行
[/Quote]

嗯,网上是有通过HOOK来做的思路,不过总觉得还是不太爽,咳~
LIFEForSoft 2008-05-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 abomber2 的回复:]
ReadDirectoryChangesW与FindFirstChangeNotification

可以过滤掉你不用的 文件 也是可以的
[/Quote]

当然可以,你还不明白我的意思吗?
我的问题是,既然都已经得到需要监控的那个文件名("D:\\a.txt"),为什么还要舍近求远,用目录做参数("D:\\")来调用
ReadDirectoryChangesW或者FindFirstChangeNotification 再过滤?
LIFEForSoft 2008-05-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cnzdgs 的回复:]
你要监视哪些变化?还是把代码贴出来大家看吧,顺便再描述一下出什么错。
[/Quote]

就很简单的文件日志追加之类的,
HANDL hChangeHandles = FindFirstChangeNotification("D:\\a.txt",
FALSE,
FILE_NOTIFY_CHANGE_LAST_WRITE
| FILE_NOTIFY_CHANGE_SIZE
);
GetLastError()= 87属于参数错误, 而第一个参数改成 "D:\\"就能通过
abomber2 2008-05-22
  • 打赏
  • 举报
回复
ReadDirectoryChangesW与FindFirstChangeNotification

可以过滤掉你不用的 文件 也是可以的
leelittlelong 2008-05-22
  • 打赏
  • 举报
回复
关注中。。
cnzdgs 2008-05-22
  • 打赏
  • 举报
回复
你要监视哪些变化?还是把代码贴出来大家看吧,顺便再描述一下出什么错。

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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