监控特定文件夹改变
来源:互联网 发布:前瞻数据库靠谱吗 编辑:程序博客网 时间:2024/05/21 09:59
监控特定文件夹的事件:三种解决方法汇总
调用Windows的api函数ReadDirectoryChanges监视指定目录中文件(推荐使用),这个使用异步IO:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/readdirectorychangesw.asp
The ReadDirectoryChangesW function retrieves information that describes the changes within a directory.
To track changes on a volume, see change journals.
BOOL ReadDirectoryChangesW(
HANDLE hDirectory,
LPVOID lpBuffer,
DWORD nBufferLength,
BOOL bWatchSubtree,
DWORD dwNotifyFilter,
LPDWORD lpBytesReturned,
LPOVERLAPPED lpOverlapped,
LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
);
或者用SHChangeNotifyRegister和SHChangeNotifyDeregister来注册事件SHChangeNotify:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/functions/shchangenotify.asp
SHChangeNotify Function
Notifiesthe system of an event that an application has performed. Anapplication should use this function if it performs an action that mayaffect the Shell.
Syntax
void SHChangeNotify(
LONG wEventId,
UINT uFlags,
LPCVOID dwItem1,
LPCVOID dwItem2
);
这个SHELL事件,有人这么介绍(http://qk.5nx.com/article_view.asp?id=11)。
或者调用API函数-FindFirstChangeNotification 、FindCloseChangeNotification、FindNextChangeNotification 和WaitForSingleObject :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/findfirstchangenotification.asp
FindFirstChangeNotification
The FindFirstChangeNotificationfunction creates a change notification handle and sets up initialchange notification filter conditions. A wait on a notification handlesucceeds when a change matching the filter conditions occurs in thespecified directory or subtree. However, the function does not indicatethe change that satisfied the wait condition.
To retrieve information about the specific change as part of the notification, use the ReadDirectoryChangesW function.
HANDLE FindFirstChangeNotification(
LPCTSTR lpPathName,
BOOL bWatchSubtree,
DWORD dwNotifyFilter
);
著名的FileMon工具用的是虚拟驱动。
- 监控特定文件夹改变
- Node监控文件夹中的文件改变事件
- [C++]监控特定文件夹的事件:三种解决方法汇总
- [C++]监控特定文件夹的事件:三种解决方法汇总
- [C++]监控特定文件夹的事件:三种解决方法汇总
- [C++]监控特定文件夹的事件:三种解决方法汇总
- 监控特定文件夹的事件:三种解决方法汇总
- 监控特定文件夹的事件:三种解决方法汇总
- 监控文件夹
- zabbix 监控特定进程
- zabbix监控特定进程
- 批量删除特定文件夹下特定文件
- 改变DataGrid特定单元格属性
- linux对于特定文件夹删除
- Delphi 监控文件改变
- 监控文本改变事件
- ICopyHook监控文件夹 (一)
- 文件夹监控源码
- ubuntu下安装windows字体
- 导入以制表符分隔的联系人数据至outlook
- windows mobile虚拟键盘表
- 使用Payment fee
- 如何動態更改flex的Css
- 监控特定文件夹改变
- 改善用户体验的alert提示效果
- 《梦的解析》 ─ 弗洛伊德
- 嵌入式linux里手工添加mtd字符设备的方法
- 留言TEXTAREA字数倒记功能
- windows mobile虚拟键盘表2
- SQL操作全集
- C++ Primer 学习笔记:头文件的使用小结
- 番茄的表单验证类-omeweb修改美化版,结合JQ