Estoy ejecutando Windows 8 Enterprise x64. Ingresé usando una cuenta del grupo de Administradores. Cuando abro el Explorador de Windows o un símbolo del sistema, puedo ver el archivo cdd.dll
:
C:\Windows\system32>dir cdd.dll
Volume in drive C has no label.
Volume Serial Number is ▨▨▨▨-▨▨▨▨
Directory of C:\Windows\system32
07/25/2012 09:49 PM 199,680 cdd.dll
Pero si abro un cuadro de diálogo Abrir archivo desde el navegador Chrome, Visual Studio u otras aplicaciones (todas son aplicaciones de 32 bits) y navego a, C:\Windows\system32
entonces no existe dicho archivo (el filtro está configurado para mostrar Todos los archivos). Y si invoco el elemento del menú contextual "Abrir ventana de comandos aquí" usando Shift + RightClick en el cuadro de diálogo Abrir archivo y dir
lo escribo confirma que no existe dicho archivo:
C:\Windows\System32>dir cdd.dll
Volume in drive C has no label.
Volume Serial Number is ▨▨▨▨-▨▨▨▨
Directory of C:\Windows\System32
File Not Found
Este efecto no es específico para cdd.dll
, muchos otros archivos también difieren. Me han dicho que esto es un efecto de la virtualización del sistema de archivos , de lo que sé muy poco.
¿Podría explicarme o darme una referencia que explique cómo funciona esto realmente? ¿Existen en realidad varias instancias diferentes de la System32
carpeta? ¿Cuál es su ubicación física en el disco? ¿Es posible acceder desde un archivo de proceso de 32 bits en una System32
carpeta diferente a la que se muestra a los procesos de 32 bits de forma predeterminada?
fuente
Respuestas:
El problema es la redirección de carpetas . Si un programa de 32 bits intenta acceder a la
%windir%\System32
carpeta, será redirigido invisiblemente al%windir%\SysWOW64
directorio, esto es para la compatibilidad de aplicaciones de 32/64 bits.Todos los archivos en System32 son de 64 bits, sin embargo, si un programa se escribió incorrectamente, pueden haber codificado el System32 en su programa al buscar un archivo DLL. Para evitar bloqueos aleatorios de programas de programas escritos incorrectamente, Microsoft lo redirige.
Si necesita acceder a la carpeta System32 y no a la carpeta SysWOW64, navegue a la carpeta "oculta"
%windir%\sysnative
que lo llevará a laSystem32
carpeta "real" y podrá explorar la carpeta como de costumbre.fuente
%windir%
es una variable de entorno, podría escribirlo así en Windows y funcionaría, el 99% del tiempo representaC:\Windows
WOW64 (Windows en Windows 64 bits) utiliza diversas tecnologías / técnicas para admitir aplicaciones de 32 bits. Entre ellos se encuentran los redirectores de carpetas y registros.
Windows Dev Center: escritorio que ejecuta aplicaciones de 32 bits
fuente