En un sistema de archivos Windows NTFS, tengo un archivo (por ejemplo, orig.mp3
). Abro este archivo, a través de esta ruta orig.mp3
, de tal manera que esté en uso (digamos, reproduciéndolo en VLC).
Luego creo un enlace duro ( cmd /c mklink /h link.mp3 orig.mp3
). Esto da como resultado dos rutas NTFS que apuntan exactamente al mismo archivo.
Finalmente trato de eliminar el archivo vinculado nuevamente ( del link.mp3
o eliminarlo en el Explorador de Windows).
Esto falla con un error: "El proceso no puede acceder al archivo porque otro proceso lo está utilizando".
¿Por qué? Y lo más importante: ¿cómo puedo evitar esto (además de asegurarme de que ningún proceso tenga el archivo original en uso)? ¿Puedo decirle a Windows que haga una 'eliminación retardada' para que el archivo vinculado se elimine automáticamente cuando el original ya no esté en uso?