我希望在指定目录的文件或子目录中有任何更改时收到通知。我通过以下简单的代码段实现了该功能:
UINT myThreadFunc(LPVOID pParam)
{
int changeCount = 0;
while(true)
{
HANDLE changeHandle = FindFirstChangeNotification(L"C:\\", TRUE, FILE_NOTIFY_CHANGE_FILE_NAME);
WaitForSingleObject(changeHandle, INFINITE);
cout<<"A modifaction has occured"<<endl;
changeCount++;
if (changeCount >= 10)
break;
if ( FindNextChangeNotification( changeHandle ) == FALSE )
break;
}
bIsExit = TRUE;
return 0;
}
如何在不使用ReadDirectoryChangesW
的情况下获取操作类型或文件名等信息?
答案 0 :(得分:1)
MSDN声明:
此功能不表示满足等待条件的更改。要在通知中检索有关特定更改的信息,请使用ReadDirectoryChangesW函数。(选中link text)