Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Simular presion teclas en servidor sobre otra aplicación

Estas en el tema de Simular presion teclas en servidor sobre otra aplicación en el foro de PHP en Foros del Web. Hola. A ver si me explico: Tengo una aplicación ejecutándose en un servidor que abre barreras de paso de acceso a un polígono, las barreras ...
  #1 (permalink)  
Antiguo 24/01/2013, 04:15
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Simular presion teclas en servidor sobre otra aplicación

Hola.
A ver si me explico:
Tengo una aplicación ejecutándose en un servidor que abre barreras de paso de acceso a un polígono, las barreras las puedo abrir con combinaciones de teclas en el servidor. Mi problema es, que necesito activar esas barreras desde otros equipos que están en red y querría saber si puedo simulas esa combinación de teclas desde los otros equipos.
Estoy usando una aplicación web en php para el control de entrada y quiero que al pulsar un botón en el navegador, active la combinación de teclas en el servidor y abra la barrera.

Gracias
  #2 (permalink)  
Antiguo 24/01/2013, 04:42
Avatar de zalito12  
Fecha de Ingreso: noviembre-2011
Ubicación: Coruña, España
Mensajes: 430
Antigüedad: 12 años, 5 meses
Puntos: 67
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Bueno, creo que no voy a poder ayudarte mucho pero a pesar de eso, estoy seguro que cualquiera que pueda necesitará más datos que los que proporcionas, por ejemplo datos del servidor, lenguaje de la aplicación,etc.
  #3 (permalink)  
Antiguo 24/01/2013, 05:08
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

En el servidor instalé wamp con php 5.4 y la otra aplicación que está instalada en el servidor, la que abre las barreras es privada, pero con el teclado funciona.

lo que quiero es, que al pulsar un boton en una web que accede al servidor, ejecute "algo" (ya sea archivo, programa o tarea) en el servidor que active la apertura de la barrera (con una combinación de teclas en el servidor abre, pero al servidor no voy a tener acceso físico más adelante)
  #4 (permalink)  
Antiguo 24/01/2013, 05:16
Avatar de zalito12  
Fecha de Ingreso: noviembre-2011
Ubicación: Coruña, España
Mensajes: 430
Antigüedad: 12 años, 5 meses
Puntos: 67
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Sí, si la idea es sencilla, pulsas botón 'Abrir 1' en la web y este ejecuta la función correspondiente en el servidor para abrir el 1.
Pero que función, como está modulado, en que lenguaje, etc.
  #5 (permalink)  
Antiguo 25/01/2013, 08:51
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Pues eso es lo que quiero saber, qué función tengo que usar (para que simule la combinación de teclas en el servidor...), que tipo de lenguaje usar (que permita ejecutar sobre el servidor).

Mi idea inicial, la cual fracasó, era crear un archivo .bat que ejecutara la simulación de teclas sobre la aplicación (este paso hace aguas por varios lados), y luego ejecutar el archivo desde php con la función exec() (esto no llegue a probarlo porque no funcionó el primer paso)
  #6 (permalink)  
Antiguo 25/01/2013, 09:03
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Cita:
Iniciado por flechabfg Ver Mensaje
Hola.
A ver si me explico:
Tengo una aplicación ejecutándose en un servidor que abre barreras de paso de acceso a un polígono
La verdad ni idea de que es eso que escribes, podrías explicar bien esta parte?

Cita:
Iniciado por flechabfg Ver Mensaje
las barreras las puedo abrir con combinaciones de teclas en el servidor. Mi problema es, que necesito activar esas barreras desde otros equipos que están en red y querría saber si puedo simulas esa combinación de teclas desde los otros equipos.
El proceso debe ser automatizado???

Cita:
Iniciado por flechabfg Ver Mensaje
Estoy usando una aplicación web en php para el control de entrada y quiero que al pulsar un botón en el navegador, active la combinación de teclas en el servidor y abra la barrera.
Con esto se generaría la automatización??

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #7 (permalink)  
Antiguo 25/01/2013, 09:17
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Cita:
Cita:
Iniciado por flechabfg
Hola.
A ver si me explico:
Tengo una aplicación ejecutándose en un servidor que abre barreras de paso de acceso a un polígono
La verdad ni idea de que es eso que escribes, podrías explicar bien esta parte?
Es un polígono industrial, con barreras en la entrada. El programa que está instalado en el servidor, lee mediante unas cámaras la matrícula de los vehículos, y si coincide con un usuario registrado, la barrera se abre.
La aplicación que yo hice, es para las visitas (vehículos no registrados), que desde las cabinas de entrada un operario mete los datos en el ordenador (mediante la aplicación web que hice) y finalmente le daría al botón (abrir barrera), y la barrera se tendría que abrir.
Las barreras abren sin problema desde la aplicación del servidor, (yo pulso Ctrl+1, y se abre la barrera 1). Y esa es la combinación que quiero que se pulse en el servidor, pero desde la aplicación web del ordenador de la cabina.

En la cabina siempre va a estar un operario tomando los datos de las visitas, lo que necesito es que cada vez que haga "click" en el botón, la barrera se abra.
  #8 (permalink)  
Antiguo 25/01/2013, 09:59
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Ohh ahora me queda mas claro, ahora veamos la interfaz tu programa -> programa empresa

Tu dices que el programa que abre las barreras es un programa privado pero que esta en un servidor... es correcto?? es un programa de escritorio o es web, puedes darnos algunos detalles de este programa como funciona, que lenguaje esta escrito etc.

Pregunto, porque se debe ver la posibilidad de que con php u otro lenguaje (si se puede) hacer como el acoplamiento

Otra cosa que me dejo pensando, es que si este programa no puede ser replicado para solo el uso de los operarios o es inaccesible para ellos y la única interfaz que permite la comunicación entre estos dos es tu interfaz

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #9 (permalink)  
Antiguo 25/01/2013, 10:32
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Cita:
Otra cosa que me dejo pensando, es que si este programa no puede ser replicado para solo el uso de los operarios o es inaccesible para ellos y la única interfaz que permite la comunicación entre estos dos es tu interfaz
Exacto, los operarios no tienen acceso al programa, yo recojo la matricula y la foto de la base de datos del programa y se la muestro al operario en mi aplicación web.

El programa es de escritorio, se llama GV-LPR, de Geovision, desconozco el lenguaje

PD: Gracias por intentar ayudarme, llevo desde el lunes dándole vueltas, porque es lo único que me falta para ponerlo en marcha, y ya estoy desquiciado....
  #10 (permalink)  
Antiguo 25/01/2013, 10:38
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Una ultima pregunta el servidor donde esta el programa es Linux o Windows
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #11 (permalink)  
Antiguo 25/01/2013, 10:50
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Por desgracia en Windows, Windows 7
  #12 (permalink)  
Antiguo 25/01/2013, 10:58
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Simular presion teclas en servidor sobre otra aplicación

mmm

Mira la idea mía es que por medio de exec ejecutar el programa y entregarle los comandos para que el abra la barrera por medio de tu interfaz, creo que seria la única forma de hacerlo, no se si me hago entender

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #13 (permalink)  
Antiguo 25/01/2013, 11:07
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Cita:
Mira la idea mía es que por medio de exec ejecutar el programa y entregarle los comandos para que el abra la barrera por medio de tu interfaz, creo que seria la única forma de hacerlo, no se si me hago entender
El programa está siempre en ejecución en el servidor, y necesito que mi aplicación pulse Ctrl+1 sobre la aplicación del servidor....

(cada vez que leo lo que escribo, me entiendo menos a mi mismo....)
  #14 (permalink)  
Antiguo 25/01/2013, 11:10
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Si viste el link veras que exec hace eso, ejecutar el programa, lo que hay que ver es esto o la pregunta seria:

En ese programa especifico cual seria el comando desde el cmd que seria equivalente a Ctrl+1 ??

Si se tiene esa respuesta se podría tener una solución a tu problema...

Seguiré buscando

Saludos.
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #15 (permalink)  
Antiguo 25/01/2013, 19:24
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Una duda respecto a exec(), yo le pasaría la ruta absoluta del programa (C:/Archivos de Programa..., etc).

Pero en qué equipo busca el programa???? en el servidor o en el cliente?, en el manual de php, no lo especifica (o no lo encontré)

aunque pienso que debe hacerlo en el servidor, ya que el programador desconoce las rutas de los programas del cliente...(pudiendo ser de diferentes SO).


Cita:
En ese programa especifico cual seria el comando desde el cmd que seria equivalente a Ctrl+1 ??
UUUffff, eso tendría que investigarlo, pero va a estar complicado, aunque la idea es muy buena.

Otro problema que tengo, es que estoy programando "a ciegas", yo hago el código php y el acceso a base de datos en mi ordenador, sin tener acceso ni a la base de datos ni al otro programa, entonces no puedo probarlo. Sólo me dejan acceso al servidor un día a la semana, durante un máximo de 2 horas (eso me complica aún más la vida).

Gracias de nuevo.

Saludos.
  #16 (permalink)  
Antiguo 29/01/2013, 04:24
 
Fecha de Ingreso: enero-2013
Mensajes: 21
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: Simular presion teclas en servidor sobre otra aplicación

Hola.
Quería comentaros que ya solucioné el problema, y agradeceros la ayuda.

Por si alguien vuelve a tener el mismo problema, o sólo por curiosidad os expongo mi solución.

1º. Descargar e instalar [URL="http://www.nirsoft.net/utils/nircmd.html"] NirCMD [/URL] en el servidor (hay varios [URL="http://foro.elhacker.net/scripting/comandos_nircmd_utiles_para_batch-t205511.0.html"] tutoriales [/URL] bastante completos)

2º. Activar la opción que permita a los servicios de apache ejecutar programas de escritorio.
(ir a administrar servicios, buscar el servicio de apache, boton derecho, propiedades, y en la pestaña de iniciar sesión activar esa casilla)

3º. Crear un archivo .bat en el servidor, que active la ventana sobre la que quiero actuar, espere medio segundo a que le dé tiempo, y después ejecute un script.
Cita:
nircmd win activate ititle "NombreDeLaVentana"
nircmd wait 500
nircmd script "prog/abrir2.txt"
4º. El script es muy sencillo. (abrir2.txt)
Cita:
sendkey ctrl down
sendkey 2 down
sendkey ctrl up
sendkey 2 up

Última edición por flechabfg; 29/01/2013 a las 04:36 Razón: porque soy inútil y no sé poner un enlace

Etiquetas: simulacion, teclas
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:56.