ReadDirectoryChangesW无法识别超过1个文件添加

时间:2012-10-26 10:12:22

标签: c++ winapi

我正在尝试使用ReadDirectoryChangesW监控目录。每当一个新文件被添加到目录我监视应用程序应该打印它的名称。如果我一次复制一个文件,应用程序工作正常,但如果我尝试,一次说两个文件,它只能识别其中一个。

我正在同步使用此功能。

以下是代码:

目录句柄:

HANDLE hDir = CreateFile( 
    "d:\\Detect", /* pointer to the file name */
    FILE_LIST_DIRECTORY,                /* access (read-write) mode */
    FILE_SHARE_READ|FILE_SHARE_DELETE,  /* share mode */
    NULL, /* security descriptor */
    OPEN_EXISTING, /* how to create */
    FILE_FLAG_BACKUP_SEMANTICS, /* file attributes */
    NULL /* file with attributes to copy */
);

ReadDirectoryChangesW

ReadDirectoryChangesW(hDir,&Buffer,sizeof(Buffer),FALSE,
    FILE_NOTIFY_CHANGE_SECURITY|
    FILE_NOTIFY_CHANGE_CREATION|
    FILE_NOTIFY_CHANGE_LAST_ACCESS|
    FILE_NOTIFY_CHANGE_LAST_WRITE|
    FILE_NOTIFY_CHANGE_SIZE|
    FILE_NOTIFY_CHANGE_ATTRIBUTES|
    FILE_NOTIFY_CHANGE_DIR_NAME|
    FILE_NOTIFY_CHANGE_FILE_NAME,&bytesReturned,NULL,NULL);

0 个答案:

没有答案