none
Calcular actividad y detectar inactividad de windows RRS feed

  • Pregunta

  • Hola amigos

    quisiera hacer una aplicación en VB.NET 2012 que haga lo siguiente:

    1. Inicie automáticamente al iniciar sesión en windows
    2. Con un timer calcular el tiempo hasta que se cierra sesion o se apaga windows
    3. Que al detectar inactividad en la pc se pause el timer; es decir si el usuario deja de usar la pc porque salio a refrigerio, reunión u otro motivo y hay inactividad por mas de 2 min se pause el timer
    4. Al detectar nuevamente actividad en la pc se active nuevamente el timer y continúe contando desde el tiempo que se quedo
    5. al cerrar windows o cerrar sesion se guarde en la base de datos (DB Access 2010) el código (autonumérico), fecha, usuario de la pc y tiempo transcurrido

    El punto 1 se podría resolver haciendo una tarea programada de windows que se ejecute al iniciar sesion en la pc y corra de manera oculta, tengo corriendo una prueba con un msj que dice "Bienvenido" en el evento form load que se ejecuta al iniciar windows.

    el punto 2 tambien se podría controlar en el evento closing del Form principal. al estar la aplicación ejecutándose de manera oculta no puedo cerrarla yo mismo sino que windows lo hace al cerrar la sesión o apagar la pc. tengo corriendo una prueba que arroja un msj que dice "hasta pronto, actividad 08:33:23 " al apagar o cerrar sesión en windows

    lo que aun no he podido hacer es identificar la inactividad de la pc para pausar el timer, asimismo no he podido detectar nuevamente actividad de la pc para reiniciar el timer.

    VALIDACIONES

    debo hacer validaciones por ejemplo, que pasa si el usuario reinicia el equipo X veces en el día tendría varias sesiones del día, podría generar una consola que me sume las sesiones del día del usuario y totalizar el tiempo trabajado por fechas.

    que pasa si se cuelga la pc o se apaga el equipo por problemas electricos?. podría desarrollar otro form para registrar manualmente el cierre de sesion por diversos problemas que se darían pocas veces

    PREGUNTAS 

    hay manera de detectar la inactividad de los programas que se estan ejecutando o la la inactividad de la pc cuando dejo de usarla a los 2 min?

    hay forma de detectar nuevamente la actividad de la pc o algun programa que se dejo de usar? 

    hay una mejor forma para hacer la aplicación con el planteamiento descrito?

    Gracias por la atención y la ayuda.

    • Cambiado Enrique M. Montejo miércoles, 10 de diciembre de 2014 11:02 Pregunta relacionada con aplicación de Windows Forms.
    martes, 9 de diciembre de 2014 15:29

Todas las respuestas

  • Creo que usted ya hizo esta pregunta en otra parte y si es la que pienso que es, ya le respondí que necesita usar Windows Hooks para controlar el timer.  Sin embargo, si no fue usted entonces me avisa y le explico en esta pregunta.

    Jose R. MCP
    Code Samples

    martes, 16 de diciembre de 2014 4:51
    Moderador