<p>Eh bien, il s’avère que je n’ai pas du tout besoin du registre.</p>
<p>Windows 11 enregistre les thèmes intégrés dans ce répertoire :</p>
<pre><code class="lang-auto">C:\Windows\Resources\Themes
</code></pre>
<p>Après avoir vérifié les ACL, j’ai remarqué que tous les utilisateurs disposent des autorisations de lecture et d’exécution, donc aucune modification d’autorisation n’est nécessaire.</p>
<p>Ces 4 fichiers, qui sont des thèmes intégrés, sont importants :</p>
<ul>
<li>
<p>themeA.theme</p>
</li>
<li>
<p>themeB.theme</p>
</li>
<li>
<p>themeC.theme</p>
</li>
<li>
<p>themeD.theme</p>
</li>
</ul>
<p>Les deux premiers sont en mode sombre, les deux autres en mode clair.</p>
<p>J’ai donc simplement créé 4 tâches planifiées via PowerShell afin que les 2 thèmes sombres soient utilisés de 18h00 à 8h59, et de 9h00 à 17h59 les thèmes clairs seront utilisés.</p>
<pre><code class="lang-auto"># Task Schedules
$user = "ENTER YOUR USERNAME"
Dark Theme A
$action = New-ScheduledTaskAction -Execute "C:\Windows\Resources\Themes\themeA.theme"
$trigger = New-ScheduledTaskTrigger -Daily -At 6PM
Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath "Theme Scheduling" -TaskName "Dark ThemeA" -Description "Activates Dark Theme everyday at 6PM" -User $user -RunLevel Limited
Dark Theme B
$action = New-ScheduledTaskAction -Execute "C:\Windows\Resources\Themes\themeB.theme"
$trigger = New-ScheduledTaskTrigger -Daily -At 12AM
Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath "Theme Scheduling" -TaskName "Dark ThemeB" -Description "Activates Dark Theme everyday at 12AM" -User $user -RunLevel Limited
Light Theme C
$action = New-ScheduledTaskAction -Execute "C:\Windows\Resources\Themes\themeC.theme"
$trigger = New-ScheduledTaskTrigger -Daily -At 9AM
Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath "Theme Scheduling" -TaskName "Light ThemeC" -Description "Activates Light Theme everyday at 9AM" -User $user -RunLevel Limited
Light Theme D
$action = New-ScheduledTaskAction -Execute "C:\Windows\Resources\Themes\themeD.theme"
$trigger = New-ScheduledTaskTrigger -Daily -At 2PM
Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath "Theme Scheduling" -TaskName "Light ThemeD" -Description "Activates Light Theme everyday at 2PM" -User $user -RunLevel Limited
</code></pre>
<p>La raison pour laquelle je voulais faire cela, c’est que c’est la façon intelligente de faire changer les thèmes du système d’exploitation en fonction de l’heure de la journée, ce qui est également meilleur pour les yeux.</p>
<p>C’est également l’un des <a href="https://aka.ms/AA98751">retours les plus votés dans le Hub de commentaires</a>, je pense que Microsoft finira par implémenter cette fonctionnalité, mais en attendant, utilisez le script PowerShell ci-dessus.</p>