elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Leer datos de otra aplicacion (VB.NET)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Leer datos de otra aplicacion (VB.NET)  (Leído 9,618 veces)
elmaro


Desconectado Desconectado

Mensajes: 301


Unas simples palabras...


Ver Perfil
Leer datos de otra aplicacion (VB.NET)
« en: 13 Enero 2009, 03:10 am »

Buenasssss
Tengo una duda, estoy haciendo una aplicacion y necesito sacar datos de otra.
Por ejemplo... hay una aplicacion con varios campos de texto... el objetivo es obtener esos datos pedo desde una app echa por mi.
Ejemplo practico:
Abro Inicio - Ejecutar. => Escribo la ruta de un archivo a ejecutar, por ejemplo "notepad.exe" (Todavia no apreto Enter)
Abro mi aplicacion y obtengo lo que hay escrito en el campo de texto del cuadro Ejecutar.... en este caso seria: "notepad.exe"
Me explico?

Si a alguno se le ocurre me seria de ayuda. Mientras tanto voy a seguir buscando y si lo encuentro lo posteo.

Gracias!


En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Leer datos de otra aplicacion (VB.NET)
« Respuesta #1 en: 13 Enero 2009, 03:27 am »

Hola, debes sacar el texto de la ventana, lo podes hacer facil con api's como findwindow y demas...sacando el nombre de clase de la ventana y del control textbox...

saludos.


En línea

elmaro


Desconectado Desconectado

Mensajes: 301


Unas simples palabras...


Ver Perfil
Re: Leer datos de otra aplicacion (VB.NET)
« Respuesta #2 en: 13 Enero 2009, 03:42 am »

Hola, debes sacar el texto de la ventana, lo podes hacer facil con api's como findwindow y demas...sacando el nombre de clase de la ventana y del control textbox...

saludos.

Entiendo...
y en el caso de que sea un RichTextBox?  :laugh:
Por ahi lei...dicen... es casi imposible. Tengo mis dudas
no creo que ya tenga que explicar que quiero hacer jaja

Saludos!
« Última modificación: 13 Enero 2009, 03:46 am por elmaro » En línea

elmaro


Desconectado Desconectado

Mensajes: 301


Unas simples palabras...


Ver Perfil
Re: Leer datos de otra aplicacion (VB.NET)
« Respuesta #3 en: 13 Enero 2009, 23:00 pm »

Bueno... vamos avanzando
Tengo el codigo para obtener el handle de la ventana... ahora mi problema es como a partir de ese handle puedo obtener los controles que tiene esa ventana.
Sigo investigando, si alguien me da una mano, sera aceptada.

Saludos!


Código:
    Private Declare Function GetForegroundWindow Lib "user32.dll" () As Int32
    Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As Int32, ByVal lpString As String, ByVal cch As Int32) As Int32


Public Function GetActiveWindowTitle() As String
        Dim MyStr As String
        MyStr = New String(Chr(0), 100)
        GetWindowText(GetForegroundWindow, MyStr, 100)
        MyStr = MyStr.Substring(0, InStr(MyStr, Chr(0)) - 1)

        Return MyStr
    End Function

Dim nWnd As IntPtr
     
'nWnd contiene el handle
nWnd = FindWindow(Nothing, GetActiveWindowTitle)


EDITADO:
Para orientar un poco
http://www.recursosvisualbasic.com.ar/htm/listado-api/195-obtener-texto-de-ventanas-externas.htm
« Última modificación: 13 Enero 2009, 23:15 pm por elmaro » En línea

elmaro


Desconectado Desconectado

Mensajes: 301


Unas simples palabras...


Ver Perfil
Re: Leer datos de otra aplicacion (VB.NET)
« Respuesta #4 en: 14 Enero 2009, 01:10 am »

Me acabo de resignar a hacer esto. No puedo conseguir el nombre de la clase de este control. (es donde se lee la conversacion de msn)
Obtuve mediante funciones estos dos nombres: DirectUIHWND que creo que es para skins y el IMWindowClass que es donde uno va tipiando el mensaje si no me equivoco. Pero el otro control... ni aparece.
Asi que voy a tener que usar otro metodo porque esta app la tengo que tener mañana :S

Si a alguien le interesa posteo el code de como saque esa informacion.
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Leer datos de otra aplicacion (VB.NET)
« Respuesta #5 en: 14 Enero 2009, 02:03 am »

manualmente con el SPY++ de Microsoft podes obtener los nombres de clase de las ventanas y su handle...o sino con api's podes hacerlo con EnumChildWindows.pero hacelo con el Spy que es mas rapido...

saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines