Estou construindo um PC de mídia Windows 10 personalizado para a igreja. Eu gostaria que os usuários tivessem um esquema de cores e fundo que correspondesse à cor litúrgica para aquele serviço (portanto, se o altar estiver coberto de roxo, o tema do computador também é roxo). Um computador calculará a cor apropriada com base no calendário litúrgico e em quaisquer eventos da igreja (por exemplo: um batismo, casamento ou serviço funerário) e atuará como o "servidor" dessas informações para todos os outros sistemas. Meu plano é salvar temas para cada cor durante a configuração do sistema. Estou tendo dificuldade em encontrar uma forma automatizada no login e periodicamente ao longo do dia para alterar todo o tema (não apenas o plano de fundo), e especificamente um que não exija privilégios administrativos.
Após a revisão do trabalho anterior relevante aqui (muito do qual tem muitos anos):
Tema do Windows baseado em localização - o melhor comentário altera apenas o protetor de tela.
Programa de Esquema de Cores do Windows (Tema) - o software recomendado é para muito mais personalização da interface do usuário (capas por aplicativo, fontes personalizadas etc.), o que é muito mais do que eu quero e provavelmente confundiria as pessoas. Além disso, a necessidade é de controle programático do tema e isso requer ação do usuário.
Reconhecer automaticamente que a imagem de fundo da área de trabalho foi alterada - isso parece ser potencialmente útil como ponto de partida, mas requer privilégios administrativos.
Pseudo-código:
Sub onUserLogin()
{
coordinateLiturgicalColor(); ' Check (and set) current color
bindTimerEvent(); ' Set timer to fire subroutine at x:00 and x:30
}
Sub coordinateLiturgicalColor()
{
currentColor = currentTheme.name();
newColor = getColor("https://192.168.1.200/color.php");
if (currentColor != newColor)
{
currentTheme.name = newColor;
currentTheme.refresh();
}
}