FindFirstChangeNotification May Not Notify All Processes on File Changes

Article translations Article translations
Article ID: 188321 - View products that this article applies to.
This article was previously published under Q188321
Expand all | Collapse all

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.

Properties

Article ID: 188321 - Last Review: October 31, 2006 - Revision: 1.1
APPLIES TO
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
Keywords: 
kbprb KB188321

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com