2010-06-22 105 views
10

Quiero detectar si el sistema está inactivo, es decir, si el usuario no está utilizando el sistema. Lo quiero como si Windows Live Messenger se cambiara automáticamente cuando salgo de la computadora por un tiempo como de 3 minutos, quiero establecer esta vez dentro del código.Detección de inactividad del sistema

Estoy trabajando en WPF en el entorno C# utilizando Visual Studio 2008 y 2010, así que si hay una manera de trabajar en ambos, será genial.

+0

Lo importante es agregar ... Estoy trabajando en pantalla completa con topmost = "true" – sikas

Respuesta

1

que he proporcionado una respuesta para la detección de la inactividad y la actividad en WPF y podría ser de su interés:

0

de Windows proporciona algunas de API para que, al aunque no son confiables para sesiones múltiples o algo así.
Lo que utilicé es un gancho para WW_MOUSE_LL con SetWindowsHookEx(); Eso está en C. Debe ser bastante similar para C#.
Básicamente cada vez que el usuario hace algo con el mouse, el temporizador comienza de nuevo desde 0 y, si el temporizador alcanza algún valor, usted hace algo al respecto (actuar, si el sistema está inactivo).
También podría engancharlo con el teclado, en caso de que el usuario esté escribiendo, y compartir el temporizador entre los dos hilos. Funciona maravilloso para mí.

Cuestiones relacionadas