Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

manejar aplicaciones desde VB

Estas en el tema de manejar aplicaciones desde VB en el foro de Visual Basic clásico en Foros del Web. Por ejemplo, ¿Podemos arrancar cualquier aplicación desde VB? Si , pero ¿Y manejarla después?¿lanzar el emule y desde VB obligar a que sea pulsado el ...
  #1 (permalink)  
Antiguo 22/04/2006, 13:21
 
Fecha de Ingreso: mayo-2003
Mensajes: 53
Antigüedad: 21 años
Puntos: 0
manejar aplicaciones desde VB

Por ejemplo, ¿Podemos arrancar cualquier aplicación desde VB? Si , pero ¿Y manejarla después?¿lanzar el emule y desde VB obligar a que sea pulsado el boton conectar? de igual forma con el msn, es decir , pulsar los botones del propio programa desde VB? ¿es posible?
  #2 (permalink)  
Antiguo 23/04/2006, 01:02
Avatar de Modern_Crusades  
Fecha de Ingreso: junio-2005
Mensajes: 620
Antigüedad: 18 años, 10 meses
Puntos: 1
si se puede y hay muchas formas de hacerlo unas mas elegantes que otras, p/e

para conectarse en el emule las teclas rapidas son Alt+C, puedes usar la funcion Sendkeys y envierle alt+c, esto no es controlar la aplicacion pero funciona.
tu otra opcion es hacer un hook al programa que quieres controlar y con la funcion sendmessage enviarle un mensaje al programa que le indica que quieres que haga, esta es mas elegante solo tienes que conocer los mensages que utiliza la aplicacion.
otra forma es crear una referencia al objeto(no todos los objetos los puedes referenciar en forma exclusiva, si no puedes tendras que referenciar el windows api functions para hacerlo) y con la funcion getobject puedes obtener el objeto p/e word y asi puedes obtener sus eventos, acceder a sus comando y hacer lo que quieras con el.

como veras la primera es facil de implementar solo tienes que cotejar que la aplicacion que deseas tiene el foco y enviar teclas.
la segunda tienes mucho control pero a bajo nivel y algo engorroso.
la tercera es la mas comoda y mas o menos sencilla, si quieres algo mas detalla do o ejemplos solo manda un mensaje.

Última edición por Modern_Crusades; 23/04/2006 a las 23:43
  #3 (permalink)  
Antiguo 23/04/2006, 22:58
 
Fecha de Ingreso: mayo-2003
Mensajes: 53
Antigüedad: 21 años
Puntos: 0
Gracias por la respuesta.A la primera opción, la de sendkeys ,creo que puedo llegar bien , para la de sendmessage dicen que en VB es muy complicado, he visto algunos ejemplos de hooks pero en C, y no lo entiendo ; y sobre la tercera si que te agradeceria algo mas de información.Salu2
  #4 (permalink)  
Antiguo 23/04/2006, 23:41
Avatar de Modern_Crusades  
Fecha de Ingreso: junio-2005
Mensajes: 620
Antigüedad: 18 años, 10 meses
Puntos: 1
te puedo mandar ejemplos he hecho varios, solo dime que aplicacion o aplicaciones quieres controlar.
el send keys he hecho varios ya que ayuda mucho.
hooks tengo a alguans aplicaciones no a todas sobre todo por l ode ocnocer sus mensajes.
y de la tercera solo di que aplicacion y no creo que se tengan problemas.
  #5 (permalink)  
Antiguo 23/06/2009, 20:00
 
Fecha de Ingreso: mayo-2009
Mensajes: 94
Antigüedad: 15 años
Puntos: 3
Respuesta: manejar aplicaciones desde VB

Cita:
Iniciado por Modern_Crusades Ver Mensaje
te puedo mandar ejemplos he hecho varios, solo dime que aplicacion o aplicaciones quieres controlar.
el send keys he hecho varios ya que ayuda mucho.
hooks tengo a alguans aplicaciones no a todas sobre todo por l ode ocnocer sus mensajes.
y de la tercera solo di que aplicacion y no creo que se tengan problemas.
Tienes idea como hago para que vb "Sepa" que ventana esta seleccionada es decir Cual estas usando (la que tiene el foco)
  #6 (permalink)  
Antiguo 23/06/2009, 22:03
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: manejar aplicaciones desde VB

Por favor, no revivir temas tan antiguos.

Gracias.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 10:58.