Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: $Edu$ en 4 Mayo 2012, 18:13 PM

Título: Como hacer click en un boton de otra aplicacion?
Publicado por: $Edu$ en 4 Mayo 2012, 18:13 PM
Ya busque en google y dicen que usando la api SendMessage, pero no se como usarla porque me pide el Handle de ese boton y no se si se consigue con otra api o que.

Lo que quiero hacer es una aplicacion que ejecute un boton de otro programa que contiene el caption "Enviar", es lo unico que se sobre ese boton xD

Espero sus respuestas, saludos!
Título: Re: Como hacer click en un boton de otra aplicacion?
Publicado por: raul338 en 4 Mayo 2012, 19:09 PM
También se hablo de este tema ya :xD

Tienes que usar la funcion FindWindow para obtener la ventana principal y luego con FindWindowEx para encontrar el boton.

Usa el Spy++ para ver como esta hecho porque si vás adivinando por ahi nunca lo encontras :xD
Título: Re: Como hacer click en un boton de otra aplicacion?
Publicado por: $Edu$ en 4 Mayo 2012, 19:13 PM
Fua no sabes de algun ejemplo para descargar? gracias raullll
Título: Re: Como hacer click en un boton de otra aplicacion?
Publicado por: seba123neo en 6 Mayo 2012, 02:41 AM
este foro esta plagado de ejemplos de esa api, ya he respondiod varias veces esto.

por ejemplo para hacerle click al boton "Aceptar" del dilogo "Ejecutar" de windows.

Código (vb) [Seleccionar]
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Integer, ByVal hWnd2 As Integer, ByVal lpsz1 As String, ByVal lpsz2 As String) As Integer
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As String) As Integer

Private Const BM_CLICK = &HF5

Private Sub Form_Load()
    Dim vPadre As Long
    Dim vHijo1 As Long
   
    vPadre = FindWindow("#32770", "Ejecutar")
    vHijo1 = FindWindowEx(vPadre, 0&, "Button", "Aceptar")
   
    Call SendMessage(vHijo1, BM_CLICK, 0, vbNullString)
End Sub


saludos.
Título: Re: Como hacer click en un boton de otra aplicacion?
Publicado por: maxmag en 10 Mayo 2012, 07:10 AM
http://www.terra.es/personal/guillet/archivos/wingestor.zip

te sirve para ver el handle
Título: Re: Como hacer click en un boton de otra aplicacion?
Publicado por: Piratex en 22 Marzo 2015, 12:35 PM
Hola, tengo una duda. Si resulta que tengo muchas ventanas que son botones como puedo recorrerlas todas y enumerarlas todas.