Estoy tratando de validar las claves de registro de mi aplicación WinForms con VS2019 (.Net 4.7.2). Probé todas las soluciones (pero nada funcionó) para el mismo problema, como por ejemplo,
(a). Configuración de la compilación de la aplicación en AnyCPU/x64/x86
(b). Desmarque la casilla de verificación Prefe de 32 bits.
(C). Ejecutando mi VS como administrador.
(d). Verificó los permisos de la clave y es accesible para todos con Control total habilitado.
string var1 = Environment.UserDomainName + "\\" + Environment.UserName; using(RegistryKey localMachine = Environment.Is64BitProcess ? RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64) : Registry.LocalMachine) { var key = localMachine.OpenSubKey("Computer\\HKEY_LOCAL_MACHINE"); } using(RegistryKey registry = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64).OpenSubKey("Computer\\HKEY_LOCAL_MACHINE")) { } using(RegistryKey key = Registry.LocalMachine.OpenSubKey("Computer\\HKEY_LOCAL_MACHINE")) { if (key != null) { } }Intenté todas las variaciones para leer el directorio, pero no funcionó.
¿Es por el dominio y el nombre de usuario? Environment.UserDomainName da el dominio de mi empresa y Environment.UserName da el nombre de usuario que inicié sesión en mi computadora.
¿Alguien puede ayudarme qué o dónde debo cambiar para obtener las llaves?