FindFirstChangeNotification May Not Notify All Processes on File Changes (188321)
The information in this article applies to:
- Microsoft Windows NT Workstation 4.0
- Microsoft Windows NT Server 4.0
This article was previously published under Q188321 SYMPTOMS
The FindFirstChangeNotification call may not notify all processes that have
sent a notify request on the same directory. This may occur if the
directory is on a remote computer.
CAUSE
This problem occurs because of an optimization in the redirector if
multiple processes open the same directory across the network. What the
redirector may do is only open one handle to the remote directory. This
causes the notify request to behave as though the notify requests were all
sent to the same handle. By design, only one request will be notified per
directory change per handle.
RESOLUTION
To receive multiple notify requests across the network, the user who runs
the program must have the "backup file and directories" user right. Then
the program must set the privilege using the AdjustTokenPrivileges call.
This is because the FindFirstChangeNotification API sets the
FILE_OPEN_FOR_BACKUP_INTENT in its create packet. This is to prevent the
optimization mentioned above from occurring. However, the "backup file and
directories" privilege must be turned on for it to work.
Modification Type: | Major | Last Reviewed: | 8/9/2001 |
---|
Keywords: | kbprb KB188321 |
---|
|