[ Foro de C# ]

¿Como puedo ejecutar un programa aunque el ordenador esté bloqueado?

25-Dec-2019 03:09
Bruno Ugarte
1 Respuestas

Tengo un programa en C# qué al preguntar la hora en voz alta el mismo contesta la hora y los minutos actuales. El problema es que cuando el PC se bloquea el programa no funciona hasta que desbloqueo la computadora.
Quisiera saber cómo mantener ejecutado el programa por más de que la computadora esté bloqueada.
 Desde ya, muchas gracias.


25-Dec-2019 23:52
Roy Mata

Cuando el SO se encuentra bloqueado (screensaver activo o muestra pantalla de inicio de sesion), los procesos en ejecucion pasan a segundo plano, por lo que, aunque tu app se encuentre en ejecucion, las funciones que se ejecuten no se mostraran al usuario hasta que la app vuelva a primer plano.
Se me ocurre (no lo he probado) que lo que puedes hacer es crear un servicio de windows (los servicios se mantienen en ejecucion aunque  SO se encuentre bloqueado), y en el servicio colocar un timer en el que se haga una verificacion de ingreso de voz y se active una funcion que devuelva la hora.
En este enlace explican cómo crear el servicio, ejecutarlo y utilizar un timer en el servicio:
https://docs.microsoft.com/es-es/dotnet/framework/windows-services/walkthrough-creating-a-windows-service-application-in-the-component-designer
Seria bueno el timer colocarlo en un thread independiente, para que se siga ejecutando en segundo plano, o utilizar un backgroungWorker






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)