Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Conocer tiempo de uso de un ordenador????

Estas en el tema de Conocer tiempo de uso de un ordenador???? en el foro de C/C++ en Foros del Web. Hola amigos ..creo este post nuevo por una duda que me asalto ase unos días .tengo algunos temas pendientes de solución en este mismo foro ...
  #1 (permalink)  
Antiguo 15/08/2013, 11:08
 
Fecha de Ingreso: mayo-2011
Mensajes: 49
Antigüedad: 12 años, 11 meses
Puntos: 0
Conocer tiempo de uso de un ordenador????

Hola amigos ..creo este post nuevo por una duda que me asalto ase unos días .tengo algunos temas pendientes de solución en este mismo foro pero no he tenido tiempo de terminarlos espero no se tome esto como SPAM ..

y volviendo al tema de este hilo tengo la necesidad de controlar el tiempo de uso que se da a un equipo de manera remota ...

Para empezar se necesita una conexión a Internet y un servidor que guarde los informes recibidos por cada una de las maquinas monitoreadas lo cual ya poseo ...

mi duda es como puedo saber si el equipo en cuestión esta siendo manipulado por una persona o solamente esta encendido.

lo único que se me ha ocurrido es supervisar el movimiento del mouse ..nunca lo he hecho pero imagino que deben existir librerías que informen si el mouse se movió sin importar si mi aplicación tiene o no el foco .

alguna otra idea???????

se que existen programas para esto pero son algo complejos y de pago ademas considero que puedo hacer algo a la medida de mis necesidades.

agradezco cualquier aporte ...
  #2 (permalink)  
Antiguo 15/08/2013, 15:22
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 12 años, 3 meses
Puntos: 35
Respuesta: Conocer tiempo de uso de un ordenador????

Si usas windows, una solución sería verificar cada tanto la posición del mouse con GetCursorPos. O algo mejor y más prolijo, instalar un par de hooks, uno para el mouse y otro para el teclado. Así una vez recibido alguno de los dos mensajes sabrás que se está haciendo uso de la pc.

Fijate y contanos.

  #3 (permalink)  
Antiguo 01/09/2013, 18:53
 
Fecha de Ingreso: mayo-2011
Mensajes: 49
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Conocer tiempo de uso de un ordenador????

hola de nuevo y gracias CARBON por la colaboración

les comento los adelantos que he tenido desarrollando esta aplicación en general monitorear el uso del mouse es una buena idea pero hay que mezclarla con otra función en primer lugar pensé en usar los hooks que comentaron en este hilo pero me di cuenta desde un principio que la documentación para este tipo de funciones es escasa ademas la mayoría ya fueron borradas ...me preguntaba porque .hasta que encontré un ejemplo lo descargue y compile he inmediatamente mi antivirus me alerto...de un key loger !!!

Después de pensarlo un rato decidí no continuar con el uso de estos ya que se presta para hacer cosas no muy éticas y prefiero evitar la tentación....

Así que lo desarrollado se hizo con las siguientes funciones

GetCursorPos(POINT); //establece la posición del mouse

hwnd=GetForegroundWindow(); //devuleve id de aplicacion que tiene el foco

GetWindowText(hwnd,char*,int); //con el dato obtenido anteriormente se obtiene el nombre de la ventana activa


GetWindowInfo(HWND,PWINDOWINFO); //obtener propiedades de la ventana


mezclando el movimiento del mouse y el caption de la ventana activa se puede tener con un grado alto de certeza que una persona esta manipulando el equipo.

intente tambien trabajar con GETAPPNAME pero no pude hacerla funcionar ,alguien tiene info al respecto?.

ahora tengo que desarrollar la conexión con el servidor pero este tema "es harina de otro costal".


ademas estuve pensando que a mi aplicación le hace falta un monitor de impresiones ,por supuesto que estos ya existen pero me gustaría integrarlo todo en un unico APP ....alguna idea al respecto???

gracias y astaluego.

Etiquetas: conocer, int, programa, tiempo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:36.