客户端监控被监控目录(含所有子目录)下的变化,我们可以采用ReadDirectoryChangesW 函数 ,该函数实现对指定的目录进行监控,并且返回详细的文件变化信息。
函数原型:
BOOL WINAPI ReadDirectoryChangesW(
__in HANDLE hDirectory;
__out LPVOID lpBuffer;
__in DWORD nBufferLength;
__in BOOL bWatchSubtree; // 监视目录. 一般选择 TRUE
__in DWORD dwNotifyFilter; // 对文件过滤的方式和标准
__out_opt LPDWORD lpBytesReturned;// 将接收的字节数转入lpBuffer参数
__inout_opt LPOVERLAPPED lpOverlapped; // 一般选择 NULL
__in_opt LPOVERLAPPED_COM

本文介绍了如何使用ReadDirectoryChangesW函数来监控Windows客户端目录及其子目录下的文件变化。该函数通过CreateFile打开目录并设置FILE_LIST_DIRECTORY权限,然后通过FILE_NOTIFY_INFORMATION结构存储变化数据。函数的dwNotifyFilter参数可以设置不同过滤条件,如文件名、目录名、属性等变化。当文件发生改变时,函数将通知存储在指定内存区域并处理。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



