| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Manolo(er_lolo) Capt


Registrado: 28 Jul 2003Mensajes: 172Ubicación: Salamanca
|
Publicado: Mie 14 Ene, 2004 8:51 am Asunto: Impedir cambio de hora |
|
|
Hay alguna forma de impedir el cambio de hora del sistema mientras se esta ejecutando mi aplicación?
Necesito que no se pueda cambiar para poder controlar un determinado tiempo.
Salu2. |
|
| Volver arriba |
|
 |
[cESAr] Cdt


Registrado: 16 Abr 2003Mensajes: 17Ubicación: Córdoba - Argentina
|
Publicado: Mie 14 Ene, 2004 2:21 pm Asunto: |
|
|
Ante es problema yo hice lo siguiente. Con un TTimer que funcione por ejemplo a 500 milisegundos chequeo la hora del sistema, y si entre chequeos consecutivos la diferencia de tiempo es mayor , por ejemplo, de 5 segundos entonces significa que alguien modifico la hora del sitema, por lo tanto retoco la hora agregandole o restandole el tiempo que me da como diferencia con las funciones de builder para tal fin. De esa forma mientras tu aplicacion esta abierta, por mas que cambien la hora, tu programa se encarga de deshacer los cambios que el usuario trate de hacer.
El TTimer no es tiempo real, por eso por mas que uno lo ponga a 500 milisegundos el periodo no es siempre ese, depende de que tan ocupado este el microprocesador. Por eso pongo un margen de 5 segundos, o podrias poner 10 si tu medicion de tiempo no tiene que ser tan precisa. |
|
| Volver arriba |
|
 |
ikis Master


Registrado: 28 Dic 2002Mensajes: 703Ubicación: Madrid, España
|
Publicado: Mie 14 Ene, 2004 2:51 pm Asunto: |
|
|
Si cambias la hora midiendo la diferencia entre la hora del sistema y la del intervalo del timer vas a obtener una hora totalmente desfasada de la realidad. Ya que como bien dices, el ttimer es un thread de baja prioridad y no es para nada exacto.
Manolo, lo que podrías es espiar como funcionan estos programitas que consultan relojes atomicos, para obtener la hora real independientemente del sistema, creo q hay algún protocolo para ese fin, pero nunca lo he probado. |
|
| Volver arriba |
|
 |
Manolo(er_lolo) Capt


Registrado: 28 Jul 2003Mensajes: 172Ubicación: Salamanca
|
Publicado: Jue 15 Ene, 2004 11:32 am Asunto: |
|
|
Bueno, gracias por las respuestas intentare buscar algo aunque la verdad no se como empezar, si encuentro algo ya aviso.
Salu2. |
|
| Volver arriba |
|
 |
ikis Master


Registrado: 28 Dic 2002Mensajes: 703Ubicación: Madrid, España
|
Publicado: Jue 15 Ene, 2004 4:54 pm Asunto: |
|
|
| fijate en los sitios sobre relojes atomicos a ver si hay algo. Tambien puedes buscar documentacion, componentes y en el peor de los casos, le pones un sniffer a uno de esos programas. |
|
| Volver arriba |
|
 |
Manolo(er_lolo) Capt


Registrado: 28 Jul 2003Mensajes: 172Ubicación: Salamanca
|
Publicado: Vie 16 Ene, 2004 8:11 am Asunto: |
|
|
| un sniffer?, no lo habia oido nunca, puedes concretar un poco mas. |
|
| Volver arriba |
|
 |
ikis Master


Registrado: 28 Dic 2002Mensajes: 703Ubicación: Madrid, España
|
Publicado: Vie 16 Ene, 2004 1:26 pm Asunto: |
|
|
Un sniffer es un programa que te muestra todos mensajes de todos los protocolos de red que circulan por una lan.
Con este podrías ver exáctamente que envía y que recibe el programa que estás analizando. |
|
| Volver arriba |
|
 |
ikis Master


Registrado: 28 Dic 2002Mensajes: 703Ubicación: Madrid, España
|
Publicado: Vie 16 Ene, 2004 10:05 pm Asunto: |
|
|
| El SpyNet o el EtherReal son dos buenas opciones. |
|
| Volver arriba |
|
 |
|