Hay varias aplicaciones, como revisiones y Service Packs, que deben sustituir un archivo en uso y, por lo tanto, no pueden hacerlo. Por esta razón, Windows ofrece la API MoveFileEx para eliminar o cambiar el nombre a un archivo. Permite al autor de la llamada especificar que desea que la operación tenga lugar la próxima vez que se inicie el sistema, antes de que se haga referencia a los archivos. El administrador de sesión realiza esta tarea leyendo los comandos registrados de cambio de nombre y eliminación del valor HKLM\System\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations.
Este subprograma vuelca el contenido del valor de cambio de nombre o eliminación pendiente y devuelve un error cuando el archivo de origen no está accesible. A continuación presentamos un resultado de ejemplo que muestra la programación de un archivo de instalación temporal para la eliminación en el siguiente reinicio:
C:\>pendmovesPendMove v1.02
Copyright (C) 2004 Mark Russinovich
Sysinternals - wwww.sysinternals.comSource: C:\Config.Msi\3ec7bbbf.rbf
Target: DELETELa utilidad MoveFile incluida permite programar comandos de desplazamiento y eliminación para el siguiente reinicio:
usage: movefile [source] [dest]Specifying an empty destination ("") deletes the source at boot.Un ejemplo que elimina test.exe es el siguiente:
movefile test.exe ""| Descargar PendMoves y MoveFile (74 KB) |