Como simulo en c o c++ la presion de una tecla en linux?

Iniciado por pomada_de_la_campana, 27 Agosto 2015, 01:24 AM

0 Miembros y 1 Visitante están viendo este tema.

pomada_de_la_campana

Hola este es mi primer post.

Quiero simular la presión de una tecla en Linux y no sé hacerlo.

Ya he visto como se hace en Windows, pero ahora quiero hacerlo en Linux.

Antes he intentado escribir directamente sobre el STDIN pero no me funciono.

No sé si en Linux es posible como en windows, pero si lo es me gustaría aprender.

engel lex

en linux no es tan simple como en windows, lo advierto... necesitarás instalar alguna que otra librería

primero instalate
sudo apt-get install libxdo-dev libxdo2

esta es lla librería xdotool

con eso ya deberías poder usar el xdotool desde c++ o incluso hasta bash para simular pulso o movimiento del mouse


un codígo de elemplo sería
Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <xdo.h>
#include <unistd.h>
int main() {
    xdo_t * x = xdo_new(":0.0");
    sleep(5);
    printf("Presionando A\n");
    xdo_keysequence(x, CURRENTWINDOW, "A", 0);

        return 0;
}


y lo compilas con la orden en el linker
-lxdo


espero sea util la explicación
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

pomada_de_la_campana

Gracias, esto es lo que estaba buscando.
Ya me puse a leer un poco sobre esta librería y es muy interesante todo lo que se puede hacer.