Leer clave de registro con wscript.shell

Iniciado por 50l3r, 26 Abril 2010, 01:02 AM

0 Miembros y 1 Visitante están viendo este tema.

50l3r

Veran, necesito leer los valores de este lugar

hkcu\software\microsoft\windows\currentversion\run

beno, de este y de otros mas, la cosa que cuando quiero leer todos los valores que contiene tira este error

No se pudo abrir la clave de registro ..... para leerla

a que se debera? que hago mal vamos

Código (vb) [Seleccionar]
Private Function registro()
    Dim regedit As Object
    Dim claves As String
   
    Set regedit = CreateObject("Wscript.Shell")
   
    claves = regedit.regread("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run")
   
    MsgBox claves
   
    Set regedit = Nothing
   
End Function


saludos


seba123neo

tenes que enumerarlas, podes con el metodo EnumKey de StdRegProv, eso es WMI, creo que con WSH no se puede enumerar...¿ igualmente porque no usas api's ? es lo mejor..
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

50l3r

ok entonces uso apis, muchas gracias ^^

skapunky

Yo personalmente lo hice con WMI. De todas formas:

Código (vb) [Seleccionar]
Private Function registro()
    Dim regedit As Object
    Dim claves As String

    Set regedit = CreateObject("Wscript.Shell")

    claves = regedit.regread("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run")

    MsgBox claves

    Set regedit = Nothing

End Function


Deberías crear un array, para poder leer cada una de los valores y controlarlo con un FOR. Piensa que dentro la clave HCU.../Run exísten varias valores y tu idea no era mala pero solo serviria si existíera un solo valor.
Killtrojan Syslog v1.44: ENTRAR