用过ReadDirectoryChangesW的高手请进来,不胜感谢
用ReadDirectoryChangesW监控一个特定目录的时候,是不是无法在所监控目录进行重命名操作,但是在 ReadDirectoryChangesW 函数的MSDN说明是可以命名滴 但是我目前是没办法命名的,不知道是什么原因?请各位大虾指教
付调用代码
HANDLE hDir = CreateFile( CString("E:\\bb"),
FILE_LIST_DIRECTORY,
FILE_SHARE_READ|FILE_SHARE_DELETE,
NULL,
OPEN_EXISTING,
FILE_FLAG_BACKUP_SEMANTICS,
NULL
);
FILE_NOTIFY_INFORMATION Buffer[1024];
DWORD BytesReturned;
while( ReadDirectoryChangesW(
hDir,
&Buffer,
sizeof(Buffer),
TRUE,
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// completion routine
))
另外MSDN关于 FILE_NOTIFY_CHANGE_FILE_NAME 的说明
FILE_NOTIFY_CHANGE_FILE_NAME
Any file name change in the watched directory or subtree causes a change notification wait operation to return. Changes include renaming, creating, or deleting a file.
问题点数:100、回复次数:1Top
1 楼vcmute(BCare4 H1Rest Good9!)回复于 2006-03-15 21:35:11 得分 100
可以改名,也能监控到,参考代码
http://www.vckbase.com/document/viewdoc/?id=814Top




