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

Controlar el fin de la ejecucion de un programa mediante Visual Basic

Estas en el tema de Controlar el fin de la ejecucion de un programa mediante Visual Basic en el foro de Visual Basic clásico en Foros del Web. Hola!!! Resulta que tengo una aplicación en Visual Basic y además un ejecutable en C. Dicho ejecutable en C es llamado desde mi aplicación en ...
  #1 (permalink)  
Antiguo 11/06/2004, 14:46
Avatar de txikano83  
Fecha de Ingreso: enero-2004
Mensajes: 29
Antigüedad: 20 años, 3 meses
Puntos: 1
Controlar el fin de la ejecucion de un programa mediante Visual Basic

Hola!!!
Resulta que tengo una aplicación en Visual Basic y además un ejecutable en C. Dicho ejecutable en C es llamado desde mi aplicación en visual Basic mediante la función Shell(). Pero necesito saber cuando termina de ejecutarse ese programa de MS-DOS que lanzo, ya que sólo se pueden continuar ejecutándose las instrucciones de la aplicación cuando haya terminado el programa lanzado.
¿Qué puedo hacer para controlar ese fin y saber cuando ha terminado de ejecutarse?

Gracias a todos. Salu2
  #2 (permalink)  
Antiguo 12/06/2004, 13:00
Avatar de Avelar  
Fecha de Ingreso: noviembre-2002
Ubicación: Ensenada, Baja California, México
Mensajes: 673
Antigüedad: 21 años, 5 meses
Puntos: 1
Lo que se me ocurre es lo siguiente:

Primero, cuando ejecutas con el Shell la aplicación, asígnale el número de la instancia a una variable:
Código:
		lNumeroInstancia = Shell(App.Path & "\Aplicacion.exe", vbMinimizedNoFocus)
Después, mediante un Timer que cada cierto tiempo esté pasándole con el número de instancia el enfoque a la aplicación ejecutada con el Shell, y cuando de error será porque ya se cerró dicha instancia:
Código:
Private Sub tmrDescargar_Timer()
	On Error GoTo ControlarError
		AppActivate lNumeroInstancia, False
		GoTo Salir
		
ControlarError:
		'Código para indicar que el programa puede seguir con la ejecución
		'del resto del código.
		
		Unload Me
		
	On Error GoTo 0
Salir:
End Sub
Por supuesto que esto estará condicionado a que el usuario no cierre el programa de C antes de que termine de hacer lo que se supone que hace.
__________________
Ariel Avelar
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:13.