28 julio 2007

Evitar que se apague la pda

Las pda's disponen de un mecanismo de ahorro de energía mediante el cual transcurrido un tiempo determinado entran en modo "suspensión", pareciendo que están apagadas y conservando energía. Por tanto, el programador se encuentra con este problema cuando lanza un proceso que puede durar varios minutos. Si la pda entra en modo suspensión es muy probable que nuestro proceso no se ejecute correctamente cuando la pda vuelva a activarse, con la consiguiente pérdida de datos.

Para evitar que la pda entre en modo suspensión, la forma más cómoda es resetear el timer que controla el tiempo restante antes de entrar en modo suspensión. Para ello, en C# deberemos cargar la función que pertenece a la API del dispositivo: SystemIdleTimerReset()

Lo haremos de la siguiente forma:

[DllImport("coredll.dll")]
public static extern void SystemIdleTimerReset();

A partir de esta declaración ya tendremos disponible la función para llamarla cuando deseemos.

No hay comentarios: