Skip to main content


Программы PendMoves (версия 1.2) и MoveFile (версия 1.01)

Автор: Марк Руссинович (Mark Russinovich)

Опубликовано 5 февраля 2013 г.

Введение

Некоторым приложениям (в частности, исправлениям и пакетам обновления) бывает нужно заменить файл, применяемый в данный момент. В расчете на такие случаи в ОС Windows предусмотрен прикладной программный интерфейс MoveFileEx, который позволяет вызывающей стороне запланировать переименование или удаление файла при следующей загрузке системы, до выстраивания системы ссылок с участием этого файла. Для выполнения этой операции диспетчер сеансов считывает зарегистрированные команды переименования и удаления из значения реестра HKLM\System\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations.

Это приложение выводит из памяти содержимое обрабатываемого значения операции переименования или удаления, а в случае недоступности исходного файла составляет отчет об ошибке. Вот пример выходных данных; в данном случае планируется удаление при следующей перезагрузке временного файла установки:

C:\>pendmovesPendMove v1.02 
Copyright (C) 2013 Mark Russinovich
Sysinternals - wwww.sysinternals.com 

 

Source: C:\Config.Msi\3ec7bbbf.rbf
Target: DELETE

Служебная программа MoveFile позволяет планировать исполнение при следующей перезагрузке команд перемещения и удаления:

usage: movefile [source] [dest]Specifying an empty destination ("") deletes the source at boot.

Ниже приводится пример удаления файла test.exe:

movefile test.exe ""