Windows提供的对文件和目录监控的系统服务API
来源:互联网 发布:网贷安卓源码 编辑:程序博客网 时间:2024/06/04 20:04
指定的一个目录进行监控,当该目录中有文件发生改变,并通知处理。 Windows提供了对文件和目录监控的系统服务,并且为应用程序提供了两个API函数,它们分别是:FindFirstChangeNotification和ReadDirectoryChangesW。其中FindFirstChangeNotification函数只能监控到某一目录下有文件发生改变,而不能监控到具体是哪一文件发生改变。ReadDirectoryChangesW 能监控目录下某一文件发生改变。
利用ReadDirectoryChangesW函数实现对一个目录进行监控的。具体的做法是:首先使用CreateFile获取要监控目录的句柄;然后在一个判断循环里面调用ReadDirectoryChangesW,并且把自己分配的用来存放目录变化通知的内存首地址、内存长度、目录句柄传给该函数。用户代码在该函数的调用中进行同步等待。当目录中有文件发生改变,控制函数把目录变化通知存放在指定的内存区域内,并把发生改变的文件名、文件所在目录和改变通知处理。
该函数定义为:
BOOL WINAPI ReadDirectoryChangesW(
HANDLE hDirectory, // 对目录进行监视的句柄
LPVOID lpBuffer, // 一个指向DWORD类型的缓冲区,其中可以将获取的数据结果将其返回。
DWORD nBufferLength, // 指lpBuffer的缓冲区的大小值,以字节为单位。
BOOL bWatchSubtree, // 监视目录. 一般选择 TRUE
DWORD dwNotifyFilter, // 对文件过滤的方式和标准
LPDWORD lpBytesReturned, // 将接收的字节数转入lpBuffer参数
LPOVERLAPPED lpOverlapped, // 一般选择 NULL
LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine // 一般选择 NULL
);
- Windows提供的对文件和目录监控的系统服务API
- Windows 8和Windows 2012提供新的WinVerifyTrust API对PE文件进行签名认证
- 使用windows服务和.NET FileSystemWatcher对象来监控磁盘文件目录的改变
- windows和linux对文件目录的处理
- 使用java提供的api对文件进行压缩解密
- 文件监控系统设计(2)-"Windows 文件监控API"
- 了解你的windows目录和系统文件.txt
- 了解你的windows目录和系统文件
- 对文件的操作windows API函数
- Python Watchdog 实行对文件或目录的监控
- Telephoney 提供的系统服务
- ContentProvider提供的对数据库批量操作的方法和对数据库变化监控的方法
- windows 监控文件目录
- windows 监控文件目录
- windows系统读写INI文件的API
- Python对文件和目录的操作
- java如何监控系统进程和服务的状态
- db2在windows上提供的服务
- 268. Missing Number多种解法
- 通过navicat向mysql数据库中手动载入excel表格失败原因
- c#后台获取HTML页面的select的选值
- 生成COM Dll的tlb文件的两种方法
- 判断一个项目是否为web项目
- Windows提供的对文件和目录监控的系统服务API
- jvm面试中遇到的问题
- 『MySQL』MySQL 错误信息及处理方法记录
- 剑指offer(7)—斐波那契数列
- 安装Discuz!论坛时提示“mysqli_connect() 不支持 advice_mysqli_connect”
- HNUST 1442 排列问题(顺序排列模板)
- 解决登陆时sql注入漏洞
- 软件工程了解
- 为什么要写博文?