Visual Basic - Ejecucion Aplicaciones Externas

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 4
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecucion Aplicaciones Externas

Publicado por Miguel (7 intervenciones) el 18/10/2018 10:48:46
Hola a todos.
He empezado como hobbie en esto de la programacion, por lo que soy bastante novato.
Estoy desarrollando una aplicacion en VB6 que me permita abrir una aplicacion externa y poder operar con ella de forma automatica.
En principio todo me va bien, a excepcion de que cuando me pongo a operar con la aplicacion externa desde VB no me deja.
Lo que observo es que si abro la aplicacion externa de forma normal, me deja introducir las claves y operar con ella.
Si la abro desde VB le meto las claves, pero no me deja operar con ella.
Si la tengo abierta de forma normal, y me pongo a operar con ella desde VB me deja perfectamente.
Un poco raro, pero es lo que me pasa.
Alguien puede decirme que se me escapa.
Por ultimo la aplicacion la abro a traves del codigo:

lID = Shell("D:\Programas\Moni_V330\moni32.exe", vbNormalNoFocus)

Gracias y un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecucion Aplicaciones Externas

Publicado por Antoni Masana (558 intervenciones) el 19/10/2018 07:22:36
Prueba este pequeño truco

1
lID = Shell("START D:\Programas\Moni_V330\moni32.exe", vbNormalNoFocus)

El START ejecuta la aplicación desvinculándola de tu programa.

En teoría sería como si abriese la aplicación de forma normal y no desde tu programa y digo en teoría porque no lo he probado como en tu caso y no se si funciona.

Lo peor que puede pasar es que se cuelgue el equipo y a eso ya estamos acostumbrados.

1
2
3
4
5
6
7
8
9
C:\>START /?
Inicia una ventana separada para ejecutar un programa o comando especificado.
 
START ["título"] [/D ruta] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/NODE <nodo NUMA>] [/AFFINITY <máscara de afinidad hex>] [/WAIT] [/B]
      [comando o programa] [parámetros]
 
      ( Esto es un resumen, hay mas...)

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecucion Aplicaciones Externas

Publicado por Miguel (7 intervenciones) el 19/10/2018 10:16:32
Hola.
Gracias, pero ahora no me abre la aplicacion.
He probado de dos formas:
LID = Shell("START H:\programas\sibmon\05051926.sis\sibmon.exe", vbNormalNoFocus)
Y me sale el error 53 en tiempo de ejecucion. No se ha encontrado el archivo.

LID = START ("H:\programas\sibmon\05051926.sis\sibmon.exe", vbNormalNoFocus)
Y me sale el error de compilacion. PRocedimiento Sub o Function no definido.

Desconozco que estoy haciendo mal.
Saludos y gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecucion Aplicaciones Externas

Publicado por Andres Leonardo (1798 intervenciones) el 19/10/2018 18:34:16
Puedes probar Asi


1
LID = Shell("H:\programas\sibmon\05051926.sis\sibmon.exe", vbNormalNoFocus)

si te da error 53 es por que la ruta no es correcta. y esa carpeta con punto intermedio no creo que sea valida
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecucion Aplicaciones Externas

Publicado por Miguel (7 intervenciones) el 19/10/2018 18:45:19
Hola.
Si solo utilizo Shell abre el archivo.
Si uso Shell START me da el error.
No obstante, en casa probare a quitarle el punto a la carpeta.
Gracias y saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecucion Aplicaciones Externas

Publicado por Antoni Masana (558 intervenciones) el 19/10/2018 22:16:17
Otra cosa haber si funciona.

El START es un ejecutable y el Shell no utiliza el PATH para la ejecucion.

Crea un fichero con BAT con esta linea: por ejemplo que se llame RUN.BAT y este en H:\programas

1
@START D:\Programas\Moni_V330\moni32.exe

Y llama al BAT

1
LID = Shell("H:\programas\RUN.BAT", vbNormalNoFocus)

Con esto se deberia corregir el error 53.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecucion Aplicaciones Externas

Publicado por Miguel (7 intervenciones) el 20/10/2018 00:31:07
Hola.
A traves del bat, consigo abrir la aplicacion, pero me deja como al principio, no puedo hacerla funcionar a traves del programa hecho con VB.
He descubierto, que abriendolo desde el inicio de windows si puedo operar con el desde el programa de VB.
A ver si descubro como poder abrirlo como si fuese de inicio.
Gracias y saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecucion Aplicaciones Externas

Publicado por Miguel (7 intervenciones) el 20/10/2018 00:26:55
Gracias, en principio el punto no es el problema.
He probado de las dos formas y sigue sin funcionar.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar