您的位置:首页 > 运维架构

解决往监控目录拖拽文件夹无法监控到的问题

2017-06-28 09:52 176 查看
在项目中一个应用场景是监控一个目录变化,但从监控目录外部拖拽一个文件夹进来,拖拽进来的文件夹里的文件无法监控到,通过查看资料,发现是一个参数的设置

#include <iostream>
#include "DirectoryChanges.h"
#include "MyDirectoryChangeHandler.h"

int main()
{
wcout.imbue(locale("CHS"));

CDirectoryChangeWatcher watcher;
CMyDirectoryChangeHandler MyChangeHandler;
watcher.WatchDirectory(_T("C:\\Users\\Administrator\\Desktop\\111"),
FILE_NOTIFY_CHANGE_FILE_NAME|FILE_NOTIFY_CHANGE_DIR_NAME,
&MyChangeHandler,
TRUE, //<-- watch sub directories?
NULL, //<-- Include Filter
NULL);//<-- Exclude Filter

getchar();
return 0;
}


FILE_NOTIFY_CHANGE_FILE_NAME :当监控目录下有文件变化得到通知

FILE_NOTIFY_CHANGE_DIR_NAME : 当监控目录下有文件夹变化得到通知

之前就是少设置了FILE_NOTIFY_CHANGE_DIR_NAME这个属性,导致监控目录下拖拽文件夹无法得到通知,现在设置这个属性就可以得到通知了!!!

点击下载demo
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐