# Pacoideas - Ejecutar una aplicación externa en 2P

**URL:** <https://foros.velneo.com/t/pacoideas-ejecutar-una-aplicacion-externa-en-2p/10936>\
**Category:** Compartir código fuente y ejemplos\
**Created:** [5 Enero, 2022 19:05 UTC](https://foros.velneo.com/t/pacoideas-ejecutar-una-aplicacion-externa-en-2p/10936 "2022-01-05T19:05:06Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![pacosatu](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/pacosatu/32/5131_2.png) [@pacosatu](https://foros.velneo.com/u/pacosatu)\
**Post date:** [5 Enero, 2022 19:05 UTC](https://foros.velneo.com/t/pacoideas-ejecutar-una-aplicacion-externa-en-2p/10936/1 "2022-01-05T19:05:06Z")

</div>

Hola.

> A veces surgen **Ideas** que pueden ser útiles para resolver determinadas necesidades de nuestras aplicaciones. De vez en cuando puedo compartirlas en el **Foro** para que no caigan en el olvido. Las podrás identificar con el siguiente logo.

![imagen](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/e/ed49d3c1ee4d42474542a839c60d533bfe1f4f33.png)

Si necesitas ejecutar una aplicación **externa** desde vClient ya sabes que puedes usar el comando [Lanzar aplicación](https://doc.velneo.com/velneo-vdevelop/proyectos-objetos-y-editores/de-aplicacion-y-datos/proceso/sistema/comandos-de-sistema#lanzar-aplicacion).

En el ejemplo siguiente ejecutamos una Instancia de Velneo usando la aplicación externa vClient.exe.  
El parámetro **Esperar** hará que no podamos continuar hasta que la aplicación externa haya terminado.

`Lanzar aplicación ( Esperar, "\c" + CPATH_VCLIENT + "\c", "vatp://USUARIO:@127.0.0.1/MiAppExterna_iapp", NRESUL )`

Ahora imagina que no queremos bloquear la aplicación principal, es decir, disponer de **Multitarea** y que al mismo tiempo esta aplicación principal no pueda cerrarse hasta que la aplicación **externa haya terminado**.

Para conseguir la **Multitarea** lo que haremos es ejecutar la aplicación **externa** llamando a un proceso PRO\_EXE en **2P** , que será el que ejecute el comando **Lanzar aplicación** con el parámetro **Esperar**.

```auto
Rem ( Ejecutar el proceso en 2P para no parar la Aplicación principal )
Ejecutar proceso ( PRO_EXE@Mi_app, 2º plano: Local multitarea (asíncrono), LOK, , )

```

De esta forma cumplimos los dos requisitos:

- **Multitarea**. La aplicación principal seguirá funcionando al mismo tiempo que la aplicación externa.
- **Finalización condicionada**. La aplicación principal no se podrá terminar hasta que la aplicación externa termine ya que el proceso en 2P estará esperando y bloqueando la finalización de aquella.

Pruébalo.

Saludos  
Paco satué
