Cambiar el nombre de dll en la carpeta de Windows

Cambiar el nombre de dll en la carpeta de Windows

Necesito cambiar el nombre de un determinado dll en mi máquina con Windows 7 (un comctl32.dll, para ser precisos) para poder reemplazarlo con otra versión de este archivo.

Lo intenté:

  1. [en: clic derecho, propiedades, seguridad, permisos, avanzado, propietario] cambió el propietario al usuario actual y [en: clic derecho, seguridad] otorgó todos los permisos posibles al usuario actual. Intenté [hacer clic derecho, cambiar nombre]; no puedo cambiarle el nombre, acceso denegado.
  2. Inicié un cmd de administrador (derechos elevados) y usé la fuerza:

    takeown /f comctl32.dll
    icacls "comctl32.dll" /grant (current user):F
    rename comctl32.dll comctl32.old 
    

    Se le negó el permiso.

  3. Eso me enojó, así que inicié un shell como usuario de Sistemas (siguiendo los pasos descritos en [1]) e intenté cambiar el nombre del archivo usando rename comctl32.dll comctl32.oldeste shell. Nuevamente resultó en un permiso denegado.

Pensé que el shell del sistema me daba básicamente el modo dios, ¡así que esto es bastante perturbador! ¿Alguien tiene más sugerencias sobre cómo cambiar el nombre de este archivo o qué me niega el acceso? ¡Estoy totalmente perdido!

[1]http://blogs.technet.com/b/askds/archive/2008/10/22/getting-a-cmd-prompt-as-system-in-windows-vista-and-windows-server-2008.aspx

//EDITAR:
Por ahora también probé la herramienta Desbloqueador. No pudo cambiar el nombre del archivo, pero prometió intentar hacerlo después de reiniciar. Reinicié el sistema pero mi viejo amigo aún no ha cambiado de nombre.

//EDITAR 2:
Según los votos negativos y los comentarios, me gustaría agregar una línea de advertencia para mis compañeros usuarios con la misma pregunta. Haga esto sólo si sabe qué y por qué lo está haciendo. De lo contrario, podrías bloquear tu sistema.
De hecho, sé lo que hago: necesito reemplazar un archivo que ya ESTÁ dañado. Lo que no sé es COMO hacerlo. Así que no es necesario mencionar los peligros aquí ni rechazar la pregunta solo porquepodríaser peligroso para la integridad del sistema. De hecho, el simple hecho de utilizar un sistema es, al final, un peligro para su integridad: ¿por qué castigar una pregunta legítima por la misma propiedad?

Respuesta1

No puede acceder a él (independientemente de sus permisos) porque el propio Windows lo está usando para funcionar.

Inicie desde otro sistema operativo (como, por ejemplo, un LiveCD de Linux o un disco de instalación de Windows) y cámbiele el nombre desde allí.

Advertencia: Esta es una muy mala idea y posiblemente impedirá que Windows se inicie. Asegúrese de hacer una copia de seguridad completa primero.

Respuesta2

Si el kernel está utilizando el archivo, no podrá cambiarle el nombre sin descargarlo primero de la memoria. por ejemplo, utilizando la consola de recuperación de Windows para cambiarle el nombre.

Si un proceso no lo está utilizando, es posible que pueda cambiarle el nombre; sin embargo, la protección de archivos de Windows puede hacer una copia con el nombre original o cambiarle el nombre nuevamente.

La forma más rápida de desactivar parcialmente la protección de archivos de Windows es eliminar el siguiente archivo:

C:/windows/system32/restore/filelist.xml

Le aconsejo que, a menos que se trate de una instalación de prueba del sistema operativo, haga una copia de seguridad del archivo cuyo nombre desea cambiar primero, pero también puede expandirlo desde el archivo binario en el CD de Windows:

expand -r filename.dl_ C:/windows/system32

Esto creará el nombre de archivo.dll en system32, obviamente tendrás que reemplazar el nombre de archivo con el nombre de archivo de la DLL.

Alternativamente, puedes usar debug.exe para desactivar la protección de archivos de Windows, pero eso es mucho más arriesgado y lleva aproximadamente media hora.

información relacionada