• Publicidad

Problemas al ejecutar exe desde un servicio

Todo lo relacionado con lenguajes de programación distintos de Perl: PHP, Java, C++, Ruby, Python, etc.

Problemas al ejecutar exe desde un servicio

Notapor ricar » 2011-04-29 11:23 @515

Hola a todos.

Tengo un problema con un programa desarrollado en Perl (program.exe por ejemplo).

Este programa en determinado momento ejecuta, a través de "`", un comando sobre Windows y recoge el resultado en una variable.

El problema radica en que otro programa, llamémosle servicio, ejecuta el programa program.exe y me da error en la variable en cuestión porque ésta está vacía.

Deduzco que de alguna forma el programa servicio evita que program.exe lance nada por consola (cmd.exe).

¿Habéis tenido algún problema parecido? ¿Alguna idea para solucionarlo?

Muchas gracias.

Saludos,
Ricar.
ricar
Perlero nuevo
Perlero nuevo
 
Mensajes: 71
Registrado: 2009-07-13 07:29 @353

Publicidad

Re: Problemas al ejecutar exe desde un servicio

Notapor explorer » 2011-04-29 11:52 @536

Sí que puede ocurrir. Sí que me he encontrado algún caso en que el servicio se ha "apropiado" de las entrada y salida estándar, impidiendo que los programas que lanza a continuación pueda usarlos libremente.

En algunos casos lo pudimos resolver duplicando (con dup(2)) los canales estándares, en el servicio. En otros casos tuvimos que poner otro protocolo de comunicaciones entre los programas secundarios (usar el disco o disco RAM o SysV para intercambiar datos). O... lo mejor... resolver todo el problema en Perl (reducir todos los programas a uno solo :) )
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Problemas al ejecutar exe desde un servicio

Notapor ricar » 2011-04-29 16:20 @722

Hola explorer.

La tercera vía no es posible, pero quizás pueda indicarles cómo solucionarlo. ¿Me podrías dar detalles de las dos primeras opciones?

Muchas gracias.

Un saludo,
Ricardo.
ricar
Perlero nuevo
Perlero nuevo
 
Mensajes: 71
Registrado: 2009-07-13 07:29 @353

Re: Problemas al ejecutar exe desde un servicio

Notapor explorer » 2011-04-29 17:32 @772

Pues no... hace mucho que no uso Windows, así que no sé cómo se hace ahora. Deberás consultar la documentación para Windows.

Lo que sí debería funcionar es el intercambio de información por medio del entubado:

programa1 | programa2

así, la salida estándar del programa1 se mete en la entrada estándar del programa2.

Y si esto no funciona, pues usando ficheros en disco.

Sería recomendable ver algo de código, por si podemos decirte si se puede hacer de otra manera.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Programación en general

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados