2011-12-06 12 views
8

¿Cómo puedo saber qué proceso tiene el enfoque actual?¿Cómo encuentro el programa con el enfoque actual?

Editar: el sistema operativo Windows, en cualquier lugar de XP a 7

+0

¿Cuál es el problema que estás tratando de resolver, donde crees que conseguir el programa con el enfoque actual te ayudará? –

+0

@Raymond Chen, me gustaría crear un prototipo de un sistema que registre qué ventana está abierta en ese momento, a partir de allí determine qué programa se está ejecutando (es decir, Spotify) una vez que se conoce esa información captura/ingrese el teclado y realice una acción (es decir, , mantenga un registro de las canciones buscadas). Gracias por la edición por cierto. – Fabian

+1

Así que quiere hacer un keylogger que pueda apuntar a cualquier proceso ;-) – AJG85

Respuesta

9

Llame al GetForegroundWindow para obtener el control de la ventana enfocada, y luego llame al GetWindowThreadProcessId para obtener el ID del proceso que creó esa ventana. Lo que hagas con esa identificación depende de ti.

+0

Tienes razón. Esta es la API que quise sugerir ... eliminar mi respuesta y +1 – AJG85

1

los primeros pasos son EnumProcesses WinAPI función (y tal vez OpenProcess)

2

Puede utilizar EnumProcesses para obtener la lista de procesos en ejecución.

Después de recuperar los mangos, echa un vistazo a GetProcessInformation, es posible que haya algo allí que pueda ayudarlo.

Cuestiones relacionadas