elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Obtener Valor de De Registro
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Obtener Valor de De Registro  (Leído 531 veces)
rigorvzla

Desconectado Desconectado

Mensajes: 187


Ver Perfil
Obtener Valor de De Registro
« en: 27 Octubre 2019, 18:08 »

Hola a todos, estoy por aqui hoy por lo siguiente, eh intentado de muchisimas maneras y probado cuanto codigo en internet eh encontrado pero no doy con la solucion, necesito obtener los valores de la siguiente llave, pero siempre me regresa null y no entiendo el porque, ya que eh probado con tras llaves de registro y si me da el valor que tiene.

Anexo el codigo q ocupo para ver quien puede ayudarme con este problema.

Código:
   Microsoft.Win32.RegistryKey rkey;
            rkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\OEMInformation");
            if (rkey == null)
            {
                Console.WriteLine("no");
            }
            else
            {
                string myTestKey = (string)rkey.GetValue("Model");
                Console.WriteLine(myTestKey);
            }

Gracias de antemano


En línea

NEBIRE


Desconectado Desconectado

Mensajes: 2.337


Ver Perfil
Re: Obtener Valor de De Registro
« Respuesta #1 en: 27 Octubre 2019, 18:42 »

Antes de abrir una clave, que tal si primero compruebas si existe?... Si no, estás cazando gamusinos.


En línea

rigorvzla

Desconectado Desconectado

Mensajes: 187


Ver Perfil
Re: Obtener Valor de De Registro
« Respuesta #2 en: 28 Octubre 2019, 03:11 »

jeje gamusinos, si existe yo revise el registro y ahi esta, incluso hice pruebas con el mismo codigo en otras keys y resulta, pero ese, los datos como q son fantasmas por que desde el registro se ve y esta, pero desde el codigo no da el valor del codigo .
En línea

NEBIRE


Desconectado Desconectado

Mensajes: 2.337


Ver Perfil
Re: Obtener Valor de De Registro
« Respuesta #3 en: 28 Octubre 2019, 13:00 »

Si has verificado que existe (entiendo que en tu equipo puedas abrir el 'regedit' y buscarlo, pero al verificar lo que quiero decir es que puedes listarlo por código y aparece, porque no vas a ir al equipo del cliente a mirar su regedit, no?), lo siguiente que procede es saber si tienes permisos para acceder a dicha clave.

Nuevamente si es en tu equipo, puedes simplemente abrir el regedit pinchas en la clave con el otro botón y tomar permisos para el usuario (si el usuario tiene un mínimo de privilegios), si solo vas a leeerlos basta el permiso 'read', si tienes que ahcer modificaciones, etc.. el 'full control'.

...y nuevamente (esto ya es mala costumbre), para información específica, ningún sitio mejor que la propia documentación del propio fabricante/proveedor del software... (cualquier explicación dada por terceros nunca será exhaustiva, porque a nadie le apetece repetir lo que ya viene explicado en otras partes, solo porque al que pregunta le dé pereza buscar la info donde procede).
https://docs.microsoft.com/en-us/windows/win32/sysinfo/registry-key-security-and-access-rights
En dicha página a su derecha aparece el árbol de temas sobre el registro, tómate el tiempo necesario para leer... es preferible documentarse bien que andar preguntando contínuamente, como es preferible tejer telas nuevas que zurcir trozos viejos y rotos para unirlos.

...programar a golpe de preguntas, es tedioso lento y sujeto a mala praxis de programación (básicamente supone que por falta de conocimientos se va improvisando sobre la marcha).
En línea

rigorvzla

Desconectado Desconectado

Mensajes: 187


Ver Perfil
Re: Obtener Valor de De Registro
« Respuesta #4 en: 29 Octubre 2019, 14:06 »

Gracias por tu respuesta nebire, de todos modos el codigo que te eh mostrado aqui se los dejo mas ordenado.

Código:
private static string ReadKey(string registro, string keyName)
        {
            Microsoft.Win32.RegistryKey rkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(registro);
            if (rkey == null)
            {
                Console.WriteLine("no");
            }
            else
            {
                keyName = (string)rkey.GetValue(keyName);
            }
            return keyName;
        }

uso:
Código:
            Console.WriteLine(ReadKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\OEMInformation\\", "Model"));

yo lo uso para ver cualquier otra llave del registro y me da la informacion sin problemas , no entiendo por que justamente esta llavo NO me muestra los datos.

Si alguien mas puede ayudarme se lo agradeceria mucho.
En línea

rigorvzla

Desconectado Desconectado

Mensajes: 187


Ver Perfil
Re: Obtener Valor de De Registro
« Respuesta #5 en: 29 Octubre 2019, 15:57 »

Hola de nuevo a migos, eh conseguido la solucion, tal cual el codigo como esta, funciona.

Pero mi equipo es de 64Bits asi q con la funcion "Any CPU" no funciona, lo que hice fue cambiar la compilacion a 64Bits y tadan! sirvio.! imagino que en caso de tratarce de 32bits debera compilarse en 86x , Gracias de todos modos , hasta una nueva inquietud.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines