Vuoi che il colore del tema di Microsoft Edge cambi da solo, passando ad esempio da blu chiaro a blu scuro, quando Windows passa tra modalità chiara e scura con “Auto Dark Mode”? Qui trovi lo stato attuale della funzione, i pro e i contro delle possibili strade e una guida passo‑passo (con script) per automatizzare il tutto in modo sicuro.
Panoramica
Ad oggi il comportamento di Edge è duplice e va distinto:
- Interfaccia chiara/scura: Edge può seguire il sistema per passare tra chiaro e scuro (Impostazioni › Aspetto › Aspetto generale › “Predefinito di sistema”).
- Colore del tema (le tavolozze colorate dell’interfaccia, i cosiddetti temi): questa parte non segue automaticamente Windows. Il passaggio da un tema colore all’altro va fatto a mano, salvo usare soluzioni alternative.
Attenzione: in Edge esistono anche le “Colori pagina” e le estensioni tipo dark reader che cambiano i colori dei siti: non sono la stessa cosa del tema del browser. Qui parliamo del colore della chrome UI di Edge (barra del titolo, tab, omnibox, ecc.).
Soluzioni a confronto
Approccio | Descrizione | Pro | Contro / Rischi |
---|---|---|---|
Funzione nativa | Edge, ad oggi (ottobre 2025), permette di “seguire il sistema” solo per la modalità chiara/scura dell’interfaccia, non per il colore del tema; quindi la richiesta non è supportata ufficialmente. | Nessun intervento manuale o rischio. | Mancanza della funzione desiderata. |
Script PowerShell / AutoHotkey | Automatizzare la modifica della preferenza del profilo (file Preferences ) che contiene l’ID del tema attivo, sostituendolo quando Windows passa a dark/light. | Soluzione flessibile, integrabile con l’app che già gestisce il cambio di tema di Windows. | Richiede individuare i due ID dei temi, chiudere Edge prima di scrivere, fare backup del profilo; errori possono corrompere il profilo. |
Estensioni di terze parti | Cercare add‑on o utility che cambino tema in base all’ora o alla modalità di sistema. | Nessuna modifica diretta ai file o al Registro. | Affidabilità e sicurezza dipendono dallo sviluppatore; le estensioni disponibili sono poche e non tutte aggiornate. |
Cambio manuale | Continuare a selezionare il tema in Impostazioni › Aspetto › Tema. | Sicuro, supportato ufficialmente. | Non automatizzato, noioso se usi l’auto dark mode. |
Perché lo script funziona
Edge (come gli altri browser Chromium) salva le impostazioni del profilo in un file JSON chiamato Preferences
sotto la cartella del profilo. Il tema applicato è referenziato dalla chiave extensions.theme.id
che contiene l’ID del tema (un’estensione speciale). Quindi, se conosci l’ID del tuo tema chiaro e di quello scuro, puoi sostituire in modo sicuro il valore dell’ID quando Windows passa di modalità.
Dove si trova il file da modificare
- Percorso tipico profilo “Default”:
%LOCALAPPDATA%\Microsoft\Edge\User Data\Default\Preferences
- Altri profili:
%LOCALAPPDATA%\Microsoft\Edge\User Data\Profile 1\Preferences
,Profile 2
, … - Puoi leggere il Profile path esatto aprendo
edge://version
e cercando “Percorso profilo”.
Come trovare gli ID dei due temi
- Installa i due temi che vuoi alternare (ad esempio “tema blu chiaro” e “tema blu scuro”) dallo Store dei componenti aggiuntivi di Edge.
- Apri
edge://extensions
, entra in Dettagli del tema e copia l’ID lungo 32 caratteri. Se non lo vedi, attiva eventualmente la modalità sviluppatore nella pagina. - In alternativa, nella cartella
%LOCALAPPDATA%\Microsoft\Edge\User Data\Default\Extensions
ciascun tema ha una sotto-cartella dal nome uguale al suo ID: è un buon modo per verificarlo.
Raccomandazioni pratiche
- Valuta se lo script fa per te: se hai dimestichezza con file di profilo e PowerShell, uno script di poche righe può cambiare la stringa dell’ID tema in base alla modalità di Windows. Esegui sempre un backup del file
Preferences
prima di procedere. - Segui il canale Canary/Dev: Microsoft spesso prova opzioni grafiche in anteprima; tieni d’occhio le note per una futura voce “Tema colore automatico”.
- Usa estensioni affidabili: se opti per un add‑on, scaricalo dallo Store ufficiale, verifica permessi richiesti, recensioni e aggiornamenti recenti.
- Soluzione temporanea: finché non esiste una funzione nativa, scegli due temi con differenze moderate: anche se cambi a mano, l’impatto visivo sarà minore.
Guida rapida alla soluzione con script
Che cosa monitora lo script
La modalità applicazioni di Windows è esposta nel Registro in HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize
con la DWORD AppsUseLightTheme
(1
= chiaro, 0
= scuro). Lo script legge questo valore e decide quale Theme ID scrivere nel file Preferences
di Edge.
Script PowerShell
Questo script seleziona automaticamente l’ID tema corretto per un profilo Edge, eseguendo un backup e chiudendo il browser per sicurezza. Puoi incollarlo in un .ps1
(ad es. Switch-EdgeTheme.ps1
) e personalizzare gli ID.
param(
[ValidateSet('auto','dark','light')]
[string]$Mode = 'auto',
[string]$Profile = 'Default',
[Parameter(Mandatory=$true)]
[string]$LightThemeId,
[Parameter(Mandatory=$true)]
[string]$DarkThemeId
)
$ErrorActionPreference = 'Stop'
function Get-WindowsAppsIsDark {
try {
$key = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize'
$v = (Get-ItemProperty -Path $key -Name AppsUseLightTheme -ErrorAction Stop).AppsUseLightTheme
return ($v -eq 0)
} catch {
# Se la chiave non esiste, assumiamo 'chiaro'
return $false
}
}
function Get-EdgePrefsPath([string]$ProfileName) {
$userData = Join-Path $env:LOCALAPPDATA 'Microsoft\Edge\User Data'
return Join-Path $userData "$ProfileName\Preferences"
}
function Stop-EdgeIfRunning {
$procs = Get-Process -Name msedge -ErrorAction SilentlyContinue
if ($procs) {
$procs | Stop-Process -Force -ErrorAction SilentlyContinue
Start-Sleep -Milliseconds 750
}
}
function Set-EdgeThemeId([string]$PrefsPath, [string]$ThemeId) {
if (-not (Test-Path $PrefsPath)) {
throw "File Preferences non trovato: $PrefsPath"
}
# Backup
$backup = "$PrefsPath.bak-$(Get-Date -Format yyyyMMddHHmmss)"
Copy-Item -Path $PrefsPath -Destination $backup -Force
# Carica e modifica JSON
$json = Get-Content -Raw -Path $PrefsPath | ConvertFrom-Json
if (-not $json.extensions) { $json | Add-Member -NotePropertyName extensions -NotePropertyValue (@{}) }
if (-not $json.extensions.theme) { $json.extensions | Add-Member -NotePropertyName theme -NotePropertyValue (@{}) }
# Imposta l'ID del tema desiderato
$json.extensions.theme.id = $ThemeId
# Pulizia campi derivati (evita residui del tema precedente)
foreach ($k in 'pack','images','colors','tints','properties') {
if ($json.extensions.theme.PSObject.Properties.Name -contains $k) {
[void]$json.extensions.theme.PSObject.Properties.Remove($k)
}
}
# Scrivi su disco
($json | ConvertTo-Json -Depth 100 -Compress) | Set-Content -Path $PrefsPath -Encoding UTF8
}
Flusso principale
$windowsIsDark = switch ($Mode) {
'dark' { $true }
'light' { $false }
default { Get-WindowsAppsIsDark }
}
$targetId = if ($windowsIsDark) { $DarkThemeId } else { $LightThemeId }
$prefs = Get-EdgePrefsPath -ProfileName $Profile
Stop-EdgeIfRunning
Set-EdgeThemeId -PrefsPath $prefs -ThemeId $targetId
Facoltativo: riavvia Edge
Start-Process "$env:ProgramFiles(x86)\Microsoft\Edge\Application\msedge.exe" -ArgumentList "about:blank"
Write-Host "Tema applicato al profilo '$Profile': $targetId"
Come usarlo
- Manuale:
powershell.exe -ExecutionPolicy Bypass -File .\Switch-EdgeTheme.ps1 -Mode auto -LightThemeId <IDCHIARO> -DarkThemeId <IDSC PURO>
- Forzato:
-Mode dark
o-Mode light
per test veloci. - Più profili: aggiungi
-Profile "Profile 1"
o ripeti la chiamata per ciascun profilo.
Nota importante: Chiudi completamente Edge prima di eseguire lo script e riaprilo dopo la modifica per applicare il tema. In caso di errore, ripristina il backup
.bak-YYYYMMDDHHMMSS
del filePreferences
.
Integrazione con Auto Dark Mode
Se utilizzi l’app “Auto Dark Mode” per far cambiare a Windows chiaro/scuro in base a orario o alba/tramonto, puoi farle lanciare lo script ogni volta che cambia modalità. L’app consente di impostare “azioni personalizzate” all’evento Light o Dark.
- Salva lo script in un percorso fisso (ad es.
C:\Scripts\Switch-EdgeTheme.ps1
). - Nelle impostazioni di Auto Dark Mode, configura un’azione su Passa a scuro:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "C:\Scripts\Switch-EdgeTheme.ps1" -Mode dark -LightThemeId <IDCHIARO> -DarkThemeId <IDSC PURO>
- Configura un’azione su Passa a chiaro in modo analogo ma con
-Mode light
.
Così Edge cambierà tema colore in sincronia con il cambio di modalità di Windows, qualunque sia la logica di Auto Dark Mode (fasce orarie, alba/tramonto, alimentazione, ecc.).
Alternativa senza app esterne: Attività pianificate
Se preferisci non installare null’altro, puoi schedulare due attività di Pianificazione attività di Windows che richiamino lo script in orari fissi (es. mattina e sera) o all’avvio sessione:
# mattina (chiaro)
schtasks /Create /TN "EdgeTemaChiaro" /TR "powershell -NoProfile -ExecutionPolicy Bypass -File C:\Scripts\Switch-EdgeTheme.ps1 -Mode light -LightThemeId <IDCHIARO> -DarkThemeId <IDSC PURO>" /SC DAILY /ST 07:30
sera (scuro)
schtasks /Create /TN "EdgeTemaScuro" /TR "powershell -NoProfile -ExecutionPolicy Bypass -File C:\Scripts\Switch-EdgeTheme.ps1 -Mode dark -LightThemeId -DarkThemeId " /SC DAILY /ST 19:30
opzionale: all'accesso utente
schtasks /Create /TN "EdgeTemaLogin" /TR "powershell -NoProfile -ExecutionPolicy Bypass -File C:\Scripts\Switch-EdgeTheme.ps1 -Mode auto -LightThemeId -DarkThemeId " /SC ONLOGON
Non è “evento‑driven” come Auto Dark Mode, ma è semplice e affidabile.
Automazione reattiva con AutoHotkey
Se vuoi reagire in tempo reale ai cambiamenti di tema di Windows, puoi intercettare il messaggio di sistema WM_SETTINGCHANGE
relativo a ImmersiveColorSet
e chiamare lo script PowerShell. Esempio minimale (AutoHotkey v2):
#Requires AutoHotkey v2.0
OnMessage(0x1A, WMSETTINGCHANGE) ; WMSETTINGCHANGE
WM_SETTINGCHANGE(wParam, lParam, msg, hwnd) {
try {
name := StrGet(lParam, "UTF-16")
if (name = "ImmersiveColorSet") {
Run 'powershell.exe -NoProfile -ExecutionPolicy Bypass -File "C:\Scripts\Switch-EdgeTheme.ps1" -Mode auto -LightThemeId -DarkThemeId ', , "Hide"
}
}
}
Lascia girare questo piccolo helper in tray: lo script verrà invocato a ogni cambio chiaro/scuro del sistema.
Sicurezza e integrità del profilo
- Backup: prima di qualsiasi modifica, copia l’intera cartella del profilo o almeno
Preferences
e Secure Preferences. - Browser chiuso: scrivi sui file soltanto a Edge chiuso per evitare conflitti di lock e sovrascritture.
- Temi installati: l’ID che imposti deve corrispondere a un tema già installato in Edge. In caso contrario, Edge potrebbe tornare al tema predefinito.
- Persistenza della modifica: il valore
extensions.theme.id
è memorizzato nel filePreferences
. In rari casi, politiche aziendali o strumenti di sicurezza possono ripristinare valori; se succede, verifica anche il file Secure Preferences e le policy attive.
Risoluzione problemi
Sintomo | Possibile causa | Come risolvere |
---|---|---|
Edge riapre con il tema vecchio | Edge non era chiuso, o l’ID non è installato | Chiudi Edge, verifica gli ID; controlla che la proprietà extensions.theme.id nel JSON coincida col tema installato |
Il file Preferences torna com’era | Protezione di profilo o policy | Disattiva temporaneamente strumenti di “repair”, verifica policy di gestione, riprova |
Edge parte ma i colori non combaciano | Residui del tema precedente | Assicurati che lo script rimuova pack , images , colors , tints , properties sotto extensions.theme |
Più profili, solo uno cambia | Stai aggiornando il profilo sbagliato | Ripeti lo script per ciascun profilo (Default , Profile 1 , …) o crea un ciclo sui profili |
FAQ
Posso usare un solo tema e farlo scurire automaticamente?
No, i temi di Edge sono estensioni statiche: per cambiare palette serve passare a un altro tema o al tema predefinito.
Il tema nativo blu di Edge ha un ID?
Il tema predefinito di Edge non è un’estensione installata come quelle dello Store. Puoi forzare il ritorno al default rimuovendo l’ID o ripristinando le impostazioni tema in Impostazioni › Aspetto.
L’uso dell’auto dark mode di Windows basta da solo?
No: Windows può commutare chiaro/scuro per le app e per il sistema, ma Edge applicherà solo l’aspetto generale, non cambierà in automatico la palette del tema se non gli dici quale usare.
Esempio di pseudocodice PowerShell semplificato
Se vuoi una versione ultra‑minima che modifichi solo una chiave (assumendo un percorso e senza le protezioni del caso):
$darkTheme = 'abcdefghijklmno-darkGUID'
$lightTheme = 'abcdefghijklmno-lightGUID'
$prefsPath = "$env:LOCALAPPDATA\Microsoft\Edge\User Data\Default\Preferences"
$windowsIsDark = (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize' `
-Name AppsUseLightTheme -ErrorAction SilentlyContinue).AppsUseLightTheme -eq 0
Chiudi Edge prima di procedere
Get-Process msedge -ErrorAction SilentlyContinue | Stop-Process -Force -ErrorAction SilentlyContinue
$json = Get-Content -Raw $prefsPath | ConvertFrom-Json
if (-not $json.extensions) { $json | Add-Member -Name extensions -Value (@{}) -MemberType NoteProperty }
if (-not $json.extensions.theme) { $json.extensions | Add-Member -Name theme -Value (@{}) -MemberType NoteProperty }
$json.extensions.theme.id = if ($windowsIsDark) { $darkTheme } else { $lightTheme }
($json | ConvertTo-Json -Depth 100 -Compress) | Set-Content -Path $prefsPath -Encoding UTF8
Ricorda: chiudi Edge prima di eseguirlo; riaprilo dopo la modifica per applicare il tema corretto.
Consigli finali
- Allinea i nomi: rinomina i file e le attività in modo esplicito (es. “EdgeTemaScuro”) per capirne subito lo scopo.
- Traccia un log: aggiungi
Start-Transcript
allo script per registrare esiti e diagnosticare eventuali regressioni. - Limita i privilegi: lo script agisce solo nel profilo utente; evita di eseguirlo con privilegi elevati se non necessari.
- Testa a freddo: prova più volte l’apri/chiudi Edge dopo la modifica per accertare che la preferenza persista.
In sintesi
Al momento non esiste un modo ufficiale per sincronizzare automaticamente il colore del tema di Edge con la modalità chiara/scura di Windows. La strada più solida è affiancare ad Auto Dark Mode (o a due attività pianificate) uno script che sostituisca l’extensions.theme.id
nel file di preferenze del profilo Edge, puntando all’ID del tema chiaro o scuro di tua scelta. È una soluzione pratica e reversibile, purché tu faccia backup e operi a browser chiuso. In alternativa, puoi continuare al cambio manuale o valutare estensioni di terze parti, accettandone i compromessi.
Esempio di checklist operativa
Passo | Fatto |
---|---|
Installa i due temi desiderati in Edge | ☐ |
Recupera i due ID da edge://extensions | ☐ |
Prepara la cartella C:\Scripts e salva Switch-EdgeTheme.ps1 | ☐ |
Sostituisci gli ID nello script, imposta -Profile se serve | ☐ |
Chiudi Edge e testa lo script con -Mode dark e -Mode light | ☐ |
Integra con Auto Dark Mode (azioni su Light/Dark) o crea attività pianificate | ☐ |
Verifica la persistenza dopo riavvio Edge e accesso utente | ☐ |
Appendice tecnica
- Chiavi Windows per il tema:
AppsUseLightTheme
(app) eSystemUsesLightTheme
(sistema) inHKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize
. - Preferenze di Edge: il file
Preferences
è un JSON per‑profilo; il tema corrente è referenziato daextensions.theme.id
con eventuali proprietà derivate (pack
,images
,colors
,tints
,properties
). - Profili multipli: ogni profilo ha il proprio
Preferences
; automatizza con un array di profili o una ricerca ricorsiva di cartelleProfile *
.
Se cerchi la soluzione “perfetta”, l’automazione con PowerShell + Auto Dark Mode è quella che oggi offre il miglior equilibrio tra controllo, affidabilità e sicurezza.