Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Web » Cómo ejecutar un programa de un pc desde un servidor Responder al tema
Nuevo tema


Página 1 de 1  [ 9 mensajes ] 
 
Nota 2006-07-03 05:40 @277

Perlero Nuevo
Registrado: 2006-07-03 05:26 @268
Mensajes: 4
Cómo ejecutar un programa de un pc desde un servidor
Desde un ordenador local accedo a un servidor de linux en el que esta el cgi a ejecutar. Mi pregunta es si alguien conoce algún método para conseguir ejecutar desde dicho servidor un programa que ya exista en el ordenador local. He probado con system pero no es útil porque la ruta del pc local no se reconoce desde el servidor (c:\...).


Nota 2006-07-03 05:58 @290
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Respuesta rápida: convierte a tu ordenador local en un servidor.

Puedes instalarte el Apache y el Perl (o cualquier otro lenguaje para CGI) y ya podrás responder a las peticiones del otro servidor.

Tiempo de instalación: 10 minutos.

Otras formas, dependen del sistema operativo. Si es un Unix, Linux, BSD, tienes otras, como RPC, abrir sockets y comunicar comandos, ssh-run, etc. etc.


Nota 2006-07-03 06:19 @305

Perlero Nuevo
Registrado: 2006-07-03 05:26 @268
Mensajes: 4
El problema radica en que dicho ordenador no puede tener instalado ni el apache ni el perl y el sistema operativo puede variar. Es decir, el acceso al servidor se podrá realizar desde cualquier ordenador sin necesidad de que éste tenga nada instalado para comunicarse con el servidor y lo vea todo como una web sin más


Nota 2006-07-03 06:50 @326
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Bueno... pero vamos a ver... si puede acceder cualquier ordenador y el sistema operativo puede variar, ¿cómo va a saber el servidor qué programa puede ejecutar en el cliente?

Si yo preparo mi infraestructura del lado del servidor con un ActiveX para que cuando se baje en los clientes, éste pueda ejecutar procesos locales -previo consentimiento del usuario-, ¿qué es lo que hago si el cliente sólo usa Firefox, o es un usuario con un MacOSX, o si es una persona con una PDA Palm o teléfono nokia E61 que se conecta por GPRS? Ninguno de ellos podrá ejecutar el ActiveX. Un ejemplo de ActiveX son los antivirus web de Panda.

Otra solución pasaría por desarrollar un Applet de Java, pero hay que decirle al usuario que le dé permiso de ejecución en modo local (que libere alguna de las restricciones de seguridad). De esta manera funcionaría igual que con el ActiveX: el cliente se conecta, se baja el Applet, el Applet pide permiso de ejecución local y sigue. Pero volvemos a tener el problema de siempre: no está garantizado que todos los clientes tengan instalado la máquina virtual de Java.

No sé si con XUL se puede hacer algo de esto...

En definitiva, salvo que me haya desfasado, si quieres que el servidor mande una orden a un cliente, en el cliente 'algo' debe estar escuchando, es decir, tiene que tener un programa servidor funcionando.

En el caso de que el programa local que quieras ejecutar ya esté instalado, lo que necesitas es que arranque por una petición del usuario al servidor. Estamos en el mismo caso: necesitas un ActiveX que, primero, pida permiso al usuario.

¿Tienes más detalles?


Nota 2006-07-03 06:52 @327
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
¿El programa instalado en el ordenador local está siempre en el mismo PATH?

En ese caso es fácil: le dices al CGI que se redirija al URL:

file:///C:/directorio/programa.exe

pero sólo funciona con el IExplorer y con algunas seguridades liberadas...


Nota 2006-07-03 08:04 @378

Perlero Nuevo
Registrado: 2006-07-03 05:26 @268
Mensajes: 4
A ver, el tema es que dicha web permite descargar un programa, pero en caso de que ya lo tengas instalado sólo deberías introducir la ruta y al pulsar el botón el servidor debería ejecutar un código que permitiese acceder al ordenador local y ejecutar el programa al estilo de la instrucción system. El problema es que las personas que descargan dicho programa no tienen por qué tener instalado el apache o el perl.


Nota 2006-07-03 09:27 @435
Avatar de Usuario
Creador de Perl en Español
Registrado: 2003-10-15 16:52 @744
Ubicación: México
Mensajes: 1163
Hola:

Puedes hacer un ejecutable que tenga al Perl incluído, de ésta manera no necesitarás que el cliente realicé la instalación del Perl para poder ejecutar el script, para ello te recomiendo que cheques las siguientes ligas:

Perl2Exe
http://indigostar.com/perl2exe.htm

Perl Dev Kit
http://www.activestate.com/Products/Per ... mpaign=PDK

Saludos

_________________
Uriel Lizama Perl programmer fundador de Perl en Español


Nota 2006-07-03 09:54 @454
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Estoy con kidd...

Es más cómodo pedirle al usuario que primero se instale el programa y luego que lo ejecute como una aplicación más.

En este foro hay bastantes mensajes sobre el tema de cómo crear programas compilados en Perl.


Nota 2006-07-03 10:04 @461

Perlero Nuevo
Registrado: 2006-07-03 05:26 @268
Mensajes: 4
OK. intentré a ver que pasa. gracias


Responder al tema  [ 9 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO