This article was previously published under Q234339
This article has been archived. It is offered "as is" and will no longer be updated.
When you run a program that improperly uses an NTFS volume lock function call on a computer running Windows NT 4.0, the volume lock may not be removed after the program has finished running.
The DeviceIoControl() function can be used to lock the volume by specifying FSCTL_LOCK_VOLUME as I/O control code. This function may not work properly if it is called after you perform the following file operations:
Open the destination file and do some I/O for that file. Then close the file.
As soon as you close the destination file, rename another file to the destination file by using MoveFileEx().
Utility programs affected with this problem require exclusive access to the disk volume. Those programs may report an error message as if another process is still accessing the volume. For instance, if you run the CHKDSK -F command against a disk volume experiencing this problem, the following error message may be displayed:
The type of the file is NTFS. Cannot lock current drive. Chkdsk cannot run because the volume is in use by another process. Would you like to schedule this volume to be checked the next time the system restarts?
Disk Administrator may also be affected as well.
The closed file object is not dereferenced if the closed file was specified as the new file for the MoveFileEx() function before the file cache write process completes. Other file operations other than locking a volume work fine. This is an NTFS-specific problem. FAT volumes are not affected by this problem.
Windows NT Server or Workstation 4.0
To resolve this problem, obtain the latest service pack for Windows NT 4.0 or the individual software update. For information on obtaining the latest service pack, please go to:
152734how to obtain the latest windows nt 4.0 service pack
For information on obtaining the individual software update, contact Microsoft Product Support Services. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:
To resolve this problem, obtain the latest service pack for Windows NT Server 4.0, Terminal Server Edition. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
152734 How to Obtain the Latest Windows NT 4.0 Service Pack
You can run Clearmem.exe to recover from this problem. The Clearmem utility flushes the section used as file cache, thus the file object in question is dereferenced by running Clearmem. This tool is included in the Microsoft Windows NT 4.0 resource kit.
Microsoft has confirmed that this is a problem in Windows NT 4.0 and Windows NT Server 4.0, Terminal Server Edition. This problem was first corrected in Windows NT Server version 4.0, Terminal Server Edition Service Pack 6.