Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: kr00s en 20 Agosto 2009, 21:08 pm



Título: Modificar el registro de windows
Publicado por: kr00s en 20 Agosto 2009, 21:08 pm
Hola que tal!

Bueno estoy desarrollando un programa en vb y me gustaria saber como puedo hacer que al ejecutar mi programa cree una entrada en el registro de windows para que se ejecute cada vez que se inicia el sistema. Esto lo quiero hacer por medio de código de visual basic 6.0

googleando di con este código, sin embargo no he conseguido hecharlo a andar. Alguna sugerencia????
Gracias de antemano

Private mReg As cQueryReg
Private Const cvRun As String = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"

Dim s As String
s = mReg.GetRegString(cvRun, txtClave.Text)

If mReg.SetReg(cvRun, txtClave.Text, txtExe.Text) = ERROR_NONE Then
LabelInfo.Caption = "La clave se ha asignado correctamente."
Else
LabelInfo.Caption = "ERROR al crear la clave."
End If


Título: Re: Modificar el registro de windows
Publicado por: MCKSys Argentina en 20 Agosto 2009, 22:53 pm
Efectivamente, en esa clave vas a poder hacer que tu aplicación se inicie junto con Windows.

Para hacerlo, debes crear un nuevo valor alfanumerico (ASCIIZ), donde el nombre  del mismo sea el de tu aplicacion y el valor por defecto, la ruta completa al EXE de tu aplicacion.

Por ej., el siguiente texto (contenido en un archivo .reg), te creara una clave llamada "miprograma", que se ejecutará desde "C:\Archivos de programa\MiEmpresa\MiPrograma.exe"
Código:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"miprograma"="C:\\Archivos de programa\\MiEmpresa\\MiPrograma.exe"


Saludos!



Título: Re: Modificar el registro de windows
Publicado por: kr00s en 21 Agosto 2009, 02:23 am
gracias por tu respuesta MCKSys Argentina!!!

Para esto que me comentas tengo que crear un bat con ese código, pero como lo puedo hacer desde visual basic 6.0?

Por cierto cree un bat con el código y me dice que se ha agregado correctamente al registro, pero al entrar al reg edit no aparece la entrada.


Título: Re: Modificar el registro de windows
Publicado por: MCKSys Argentina en 21 Agosto 2009, 04:08 am
Desde VB hay muchas librerias que te permiten acceder al Registro de Windows. Yo en particular, uso directamente la API de Windows.

Si tienes instalado el Visual Basic 6 (creo que es obvios esto, pero avisar nunca esta demás  ;D) ve a "C:\Archivos de programa\Microsoft Visual Studio\VB98\Wizards\PDWizard\Setup1" (suponiendo que lo tienes instalado en la carpeta por "defecto").

Ahi encontraras el codigo fuente del Setup1. Este programa es el que utilizas cuando creas un "instalador" para tu aplicación VB (usando el Asistente de empaquetado y distribucion).

Ahora, en ese lugar, puedes mirar el modulo "registry.bas". Encontraras todo lo necesario para acceder al registro de Windows.

Saludos!


PD: Si tienes curiosidad, fijate los otros modulos (en especial Setup1.bas). Tienes muchas funciones interesantes y útiles.  ;)




Título: Re: Modificar el registro de windows
Publicado por: kr00s en 21 Agosto 2009, 06:34 am
Muchisimas gracias por tu respuesta, excelente el dato que me pasaste!!

neta esta muy interesante!

gracias
Saludos!