¿Cómo maneja el sistema los archivos "bloqueados" (es decir, WinXP)?

¿Cómo maneja el sistema los archivos "bloqueados" (es decir, WinXP)?

¿Cómo maneja exactamente el sistema operativo los archivos bloqueados?

O para ser precisos, ¿por qué a veces no puedo eliminar un archivo bloqueado desde el Explorador de Windows, pero si abro un símbolo del sistema en el directorio en cuestión, puedo eliminarlo desde allí?

Respuesta1

Cuando un proceso abre un identificador de un archivo o directorio, especifica qué nivel de recurso compartido desea. El nivel de uso compartido puede ser cualquier combinación de los indicadores FILE_SHARE_DELETE, FILE_SHARE_READ y FILE_SHARE_WRITE. Los nombres de las banderas son bastante obvios. Si especifico FILE_SHARE_READ, esto permite que otros procesos lean el archivo, FILE_SHARE_WRITE permite que otros procesos escriban el archivo (posiblemente cambiándolo bajo mis pies) y FILE_SHARE_DELETE permite que otros procesos eliminen el archivo (aunque creo que en realidad no se elimina hasta después de cerrar el identificador de mi archivo).

De todos modos, si algún proceso abre un identificador de un archivo y nonoespecifique FILE_SHARE_DELETE, esto significa que ningún otro proceso puede eliminar el archivo hasta que el primer proceso haya cerrado su identificador. Esta es la razón habitual por la que aparecen esos errores de "el archivo está bloqueado por otro proceso". Tenga en cuenta que los procesos también pueden abrir identificadores de directorios, por lo que esto también se aplica a la eliminación de directorios, incluso si están vacíos.

En cuanto a por qué puede eliminar un archivo desde el símbolo del sistema cuando no puede eliminarlo desde el Explorador, no entiendo por qué sucedería esto. Necesitaría verlo con mis propios ojos.

J.R.

Respuesta2

John tiene razón... no puedes eliminar archivos que están en uso, porque... están en uso. Es la misma razón por la que no puedes cambiar los neumáticos mientras conduces al trabajo. Sucederían todo tipo de cosas inesperadas.

Si desea saber qué proceso está utilizando el archivo (para poder finalizar temporalmente el proceso para que libere el bloqueo del archivo, utiliceExplorador de procesosde Microsoft/Sysinternals.

  • Haga clic en el menú Buscar y elija Buscar identificador o DLL...
  • Escriba el nombre del archivo que no puede eliminar y que está bloqueado por algún proceso.
  • Después de escribir la frase de búsqueda, haga clic en el botón Buscar

Si Windows utiliza un archivo, puede utilizarMover al arrancarpor Gibin Software para eliminar el archivo bloqueado después de reiniciar.

Respuesta3

Supongo que tiene alguna extensión de terceros en el explorador que abre el archivo por un momento para escanearlo, lo que hace que el explorador lo bloquee. ¿Son sólo los archivos más grandes los que tienen este problema? Los bloqueos son bloqueos en el mundo de Windows, ningún símbolo del sistema puede eliminar un archivo bloqueado (aunque, como se señaló anteriormente, hay formas de cerrar el bloqueo y luego eliminar el archivo)

información relacionada