Назад | Перейти на главную страницу

Разблокировать файл на Windows Server 2003 с удаленного рабочего стола без перезагрузки

У нас работает несколько компьютеров с Windows Server 2003, каждая из которых имеет свои собственные цели. Есть запланированные задания, которые синхронизируют некоторые файлы через SFTP, используя WinSCP. Очень иногда остается только что скопированный файл заблокирован в папке «Входящие» без причины. Собственная фоновая задача машины (запрограммированная на Java) больше не может переместить ее в "обработанную" папку после ее обработки.

Ручное перемещение дает только известное сообщение об ошибке Невозможно переместить [имя файла]: он используется другим человеком или программой.

Я попытался Unlocker который отлично работает локально в WinXP, но не работает на этих машинах Win2K3 с удаленного рабочего стола (параметр разблокировки не отображается в контекстном меню, щелкнув правой кнопкой мыши). Я попытался Обозреватель процессов а также как описано в эта статья в блоге, но это привело к сбою и перезагрузке сервера (не уверен, потому что это выполняется через удаленный рабочий стол).

Единственное средство - перезагрузить компьютер, но мы, конечно, хотели бы этого избежать. Какие-либо предложения?

Что произойдет, если вы перезапустите службу FileZilla Server? Вы можете запустить службу net start / stop "FileZilla Server" из своего Java-приложения, если не удается переместить файл.

Если файл был открыт ядром (системным процессом), то отключение дескриптора обычно приводит к синему экрану, хотя не всегда.

Обычно закрытие программы, в которой она была открыта, освобождает блокировку. Я подозреваю, что ваше Java-приложение в конечном итоге виновато.

Эти ресурсы могут быть полезны:

Настройка гибкой блокировки в Windows http://support.microsoft.com/kb/296264

Как Oplocks работают в среде Windows http://msdn.microsoft.com/en-us/library/cc308441(v=MSDN.10).aspx