Serviço do Windows com reconhecimento do tempo do sistema

Estou pensando em escrever um serviço do Windows que irá ativar ou desativar uma determinada funcionalidade em horários especificados pelo usuário (usando um utilitário de configuração que fornecerei). Basicamente, o usuário especificaria certas vezes que o PC entraria no modo "somente trabalho" (bloqueando o Facebook e outros sites que causam distração) e, quando esses tempos terminassem, o PC retornaria ao modo normal.

Já criei algumas maneiras de criar o modo "somente trabalho", mas o que estou enfrentando é como saber quando entrar e sair desse modo. Eu realmente não quero trabalhar com threads e timers se eu puder evitá-lo, pois parece que isso criaria uma enorme sobrecarga, então o que eu estou procurando seria de alguma forma:

Conecte-se à API do Windows se houver algum tipo de evento timeChanged () a ser verificadoUse algum tipo de biblioteca pré-construída para disparar eventos em um horário especificadoAlgum outro método que eu não tenha pensado nisso é elegante e maravilhoso

Alguém sabe a melhor maneira de fazer isso?

questionAnswers(2)

yourAnswerToTheQuestion