2

当指定目录的文件或子目录发生任何更改时,我希望收到通知。我用以下简单的代码段实现了这个功能:

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

4

1 回答 1

1

MSDN 状态:

此函数不指示满足等待条件的更改。要在通知中检索有关特定更改的信息,请使用 ReadDirectoryChangesW 函数。(检查链接文本

于 2008-12-04T07:32:30.637 回答