Comprobar una entrada del registro

Iniciado por Snort, 11 Septiembre 2006, 20:11 PM

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

Snort

  Wenas a todos, vereis lo qe qiero es hacer un programilla qe lea una entrada del regisrto cada vez qe se ejecute, para qe la primera vez, la cree, y las siguientes la reescriba con un numero (+1) empezando de cero.
   Por ahora la informacion qe he conseguido, es para crear y o modificar una entrada:

Set reeg = CreateObject("WScript.Shell")
reeg.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\ATI",
"0"

   Pero poner esto no me serviria, ya qe cada vez qe se inicie la aplicacion el valor seria 0, evidentemente.
Y para leer EL VALOR de una entrada:

On Error Resume Next
Set lee = CreateObject("WScript.Shell")
X = lee.regRead ("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ATI")
label1.caption= X

   Con esto solo consigo qe me salga el valor de la clave indicada, y si la clave no existe me da error, por tanto lo qe tendria qe hacer es crear una variable de la lectura de la clave, luego sumarle 1 y volverla a guardar, pero on se como hacerlo...  :-\

     ¿Alguien me puede dar una ayuidita pliss? ;)


SaludoS

Juanillo

yo te recomiendo que lo hagas con apis.
si todavia te interesa el codigo mandame un mail y te envio un ejemplo muy bueno ya sabes mi direccion, xelinir@hotmail.com 

por cierto te conteste al email sobre tu troyano.

un saludo snort!

Snort

   He seguido buscando y no he encontrado respuesta, lo qe he hecho temporalmente ha sido (una chapuza impresionante) leer los datos de: HKCU\software\microsoft\windowsNT\currentversion\winlogon\Legalnoticetext
(asi no tengo qe crear una entrada nueva), qe por defecto es " " (a menos qe tengas un mensaje de inicio al cargar guindous) y meterlos en una variable al iniciar. Luego , al cerrar el programa se reescribe esa misma entrada del registro con la variable mas 1.

PD; Si teneis respuesta a la pregunta anterior, comunicarlo plisss, k esta no me parece la mejor forma de hacer el contador...

SaludoS

Mr.Chispa

pasos:
lees el registro.
si tira error (significa q no existe) lo creamos.
si no, escribimos el registro con el nuevo valor.
facil, no?
saludos ;D

Zorrohack

On Error Resume Next
Dim reeg as Object
Set reeg = CreateObject("Wscript.Shell")
x = reeg.RegRead("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\ATI")
If x = "" Then
  escribe = reeg.RegWrite("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\ATI","0")
Else
  suma = x + 1
  x = reeg.RegWrite("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\ATI",suma)
End If


;D
Progresamos porque hay Millones de imbeciles, maldicion jodi a McAfee,Panda,Kav,Norton, perdonen solo practicaba.

Snort

   Gracias por las respuestas, ya rula todo perfectamente