¿Se comparte el mismo registro de Windows entre todos los perfiles de usuario?

¿Se comparte el mismo registro de Windows entre todos los perfiles de usuario?

Tengo dos perfiles de usuario en mi PC con Windows 10, un perfil de desarrollador y un perfil normal. En el perfil de desarrollador, ejecuté un .regarchivo para agregar un elemento del menú contextual que abre una instancia de Terminal de Windows con un mensaje de Git Bash activo.

Para mi sorpresa, el menú contextual en el otro perfil de Windows también mostraba la nueva opción de menú, pero al hacer clic, mostraba un error que decía que no podía acceder a la ruta o al archivo especificado. Esto se debe a que no tengo Windows Terminal instalado en el perfil normal. Y eliminar las claves de registro en cuestión en el perfil normal también elimina el elemento del menú contextual en el perfil de desarrollador.

¿Se comparte el mismo registro de Windows entre los dos perfiles y esto provoca que esto suceda? Si es así, ¿cómo puedo tener un registro independiente para cada perfil de usuario?

Archivo de registro:

Windows Registry Editor Version 5.00
    
[HKEY_CLASSES_ROOT\Directory\Background\shell\windowsterminal]
@="Open Windows Terminal Here"
"Icon"="%USERPROFILE%\\AppData\\Local\\WTerminal\\terminal.ico"
        
[HKEY_CLASSES_ROOT\Directory\Background\shell\windowsterminal\command]
@="wt new-tab --profile \"Git Bash\" --startingDirectory ."

Respuesta1

Si y no. HKEY_LOCAL_MACHINEestá compartido; HKEY_CURRENT_USERes privado por usuario.

Mientras tanto HKEY_CLASSES_ROOT es unvirtualárbol que en realidad esuna vista fusionadatanto por usuario HKCU\Software\Classescomo por HKLM\Software\Classesárboles. (Es un resto de Windows 9x, que no tenía la separación).

Las escrituras realizadas en HKCR irán al registro personal o del sistema según sus privilegios y si la clave que se actualiza se cargó originalmente desde HKCU o HKLM.

Para tener asociaciones de archivos por usuario, colóquelas HKEY_CURRENT_USER\Software\Classesen lugar de usar HKEY_CLASSES_ROOT. De manera similar, para crear archivos para todo el sistema, colóquelos en HKLM.

Respuesta2

Sí, hay un registro único. El registro tiene varias colmenas reales y varias colmenas "virtuales". Dos de las colmenas reales más importantes son HKEY_LOCAL_MACHINEy HKEY_USERS. Como implica esto último, tiene valores para múltiples usuarios.

Ahora HKEY_CURRENT_USERhay un mapeo virtual de una HKEY_USERSsubclave, en términos generales, la clave del usuario que inició el proceso. Por lo tanto, diferentes procesos pueden tener HKEY_CURRENT_USERasignaciones diferentes. De manera similar, HKEY_CLASSES_ROOTtambién es una vista virtual, formada por la fusión HKEY_LOCAL_MACHINEy esa HKEY_USERSsubclave.

El registro admite listas de control de acceso (ACL), por lo que es posible que no pueda ver las claves de otros usuarios.

información relacionada