Autor
|
Tema: Obtener Valor de De Registro (Leído 3,161 veces)
|
rigorvzla
Desconectado
Mensajes: 221
|
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. 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
|
|
|
|
Serapis
|
Antes de abrir una clave, que tal si primero compruebas si existe?... Si no, estás cazando gamusinos.
|
|
|
En línea
|
|
|
|
rigorvzla
Desconectado
Mensajes: 221
|
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
|
|
|
|
Serapis
|
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-rightsEn 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
Mensajes: 221
|
Gracias por tu respuesta nebire, de todos modos el codigo que te eh mostrado aqui se los dejo mas ordenado. 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: 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
Mensajes: 221
|
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
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Ver si existe un valor en el registro (if)
Programación Visual Basic
|
lipman
|
3
|
3,749
|
22 Junio 2007, 18:19 pm
por lipman
|
|
|
Obtener Datos de un valor del registro
Programación Visual Basic
|
hAcKeR92
|
3
|
4,258
|
19 Septiembre 2009, 14:14 pm
por hAcKeR92
|
|
|
Como Obtener valor de un textbox, desde un valor, hasta otro valor [VB6]
Programación Visual Basic
|
revenge1252
|
4
|
6,822
|
17 Julio 2012, 09:38 am
por BlackZeroX
|
|
|
Obtener valor del pixel
.NET (C#, VB.NET, ASP)
|
Finrael
|
1
|
3,658
|
16 Junio 2012, 18:22 pm
por Maurice_Lupin
|
|
|
obtener valor por medio de id
Desarrollo Web
|
kakashi20
|
1
|
2,096
|
16 Mayo 2013, 01:28 am
por #!drvy
|
|