Windows 11 installa app fantasma che occupano giga: come eliminarle e bloccarle per sempre

Un PC con Windows 11 può ritrovarsi con decine di gigabyte occupati da applicazioni mai installate manualmente, spesso invisibili nella schermata App installate. Come risolvere il problema.

Quest’oggi ci siamo ritrovati con un PC che non aveva praticamente più spazio libero a disposizione sull’unità principale. È una macchina Windows 11 Pro con SSD, seppur con una dotazione hardware limitata: continuiamo a utilizzarla soltanto per esigenze interne (non certo per test o sviluppo). Utilizzando l’ottimo WinDirStat, nella sua versione più recente e più veloce, abbiamo potuto verificare che la cartella C:\Program Files\WindowsApps risultava particolarmente pesante.

Con un semplice doppio clic, portandoci all’interno della directory WindowsApps con WinDirStat, abbiamo potuto verificare che in cima alla lista – in termini di spazio occupato – svettavano giochi come Candy Crush, Disney Magic Kingdoms, March of Empires, Hidden City, Minecraft UWP e altri titoli, impegnando decine e decine di gigabyte.

È mai possibile che un sistema Windows 11 Pro, peraltro utilizzato esclusivamente per finalità lavorative, si ritrovi con tutti questi giochi automaticamente installati? Possibile che Windows 11, ancora oggi, non fornisca una Modalità professionale per evitare questo tipo di comportamenti almeno in ufficio e in azienda?

Perché Windows 11 installa applicazioni potenzialmente indesiderate?

Cominciamo col dire che la cartella WindowsApps non è una normale directory di programmi: è il contenitore protetto in cui Windows conserva i pacchetti delle app moderne.

Microsoft sottolinea che i pacchetti delle app sono installati, per impostazione predefinita, %programfiles%\WindowsApps\<package_full_name> e che l’installazione delle app pacchettizzate avviene “per utente”, non nel modo tradizionale dei programmi Win32 che possono essere installati globalmente per tutto il sistema.

Questa distinzione è fondamentale per capire perché una cartella può esistere sul disco anche quando l’app non compare nell’elenco delle applicazioni installate.

Nella configurazione predefinita, Windows 11 può installare automaticamente programmi e applicazioni sul sistema dell’utente: tale comportamento è in gran parte legato al componente denominato Consumer Experience, un insieme di funzionalità integrate nel sistema operativo progettate per distribuire contenuti suggeriti, applicazioni popolari e servizi digitali in modo automatico, senza richiedere un intervento esplicito da parte dell’utente.

Il meccanismo, gestito internamente da Windows 11, si appoggia a diversi sottosistemi – tra cui il servizio di distribuzione contenuti (Content Delivery Manager), il provisioning delle app e l’integrazione con il Microsoft Store (ne parliamo più avanti) – che lavorano in sinergia. Windows può scaricare e preparare pacchetti applicativi in background, inserirli nella cartella WindowsApps e, in alcuni casi, installarli automaticamente per l’utente corrente o per nuovi profili.

Perché un’app può essere presente in WindowsApps ma non comparire tra le app installate

Nel nostro caso avevamo sulla macchina in questione tutti i suggerimenti per velocizzare e ottimizzare Windows 11. Digitando App installate non c’era traccia dei programmi rilevati con WinDirStat nella cartella WindowsApps. Di fatto, quindi, sembrava avere a che fare con programmi fantasma (o meglio “giochi fantasma”) che occupavano spazio ma non risultavano rimovibili con i classici strumenti integrati in Windows 11.

La cosiddetta Consumer Experience di Windows 11 (ma anche di Windows 10) introduce una distinzione importante tra ciò che è effettivamente installato e ciò che è semplicemente predisposto nel sistema. È proprio questa distinzione che spiega perché molte applicazioni possono essere presenti fisicamente sul disco, occupare spazio e comparire in %programfiles%\WindowsApps, pur non essendo visibili nell’elenco tradizionale delle app installate.

Inoltre, Consumer Experience non opera solo a livello dell’utente attivo: può influenzare anche il profilo di default e i nuovi account, sfruttando il provisioning delle applicazioni. Ciò significa che determinati pacchetti possono essere automaticamente installati o resi disponibili per utenti che non hanno mai interagito con il sistema, contribuendo alla comparsa di applicazioni apparentemente “mai installate” per l’account in uso, ma comunque presenti nel sistema.

La finestra App installate di Windows 11 mostra ciò che è rilevante per l’utente corrente e per la normale disinstallazione tramite interfaccia grafica. Non è uno strumento omnicomprensivo: lo spieghiamo al paragrafo seguente.

Il ruolo del provisioning: app pronte per i nuovi utenti

Windows può contenere non soltanto applicazioni “installate” ma anche app provisioned, cioè pacchetti predisposti per essere caricati automaticamente quando viene creato o inizializzato un nuovo profilo utente.

Microsoft definisce Get-AppxProvisionedPackage come la cmdlet PowerShell che restituisce i pacchetti presenti in un’immagine Windows e configurati per essere installati per ogni nuovo utente.

Se un pacchetto compare nell’elenco Get-AppxProvisionedPackage -Online, Windows lo considera parte dell’immagine online del sistema e può installarlo per nuovi utenti. Non serve che l’utente apra Microsoft Store né che confermi manualmente l’installazione.

È proprio per questo che, su un PC con più account, si possono trovare pacchetti apparentemente “mai installati”: oltretutto le policy applicate sul registro di sistema che evitano il caricamento di applicazioni indesiderate da parte di Windows funzionano a livello di singolo account utente (ramo HKEY_CURRENT_USER) e non a livello globale (HKEY_LOCAL_MACHINE).

Microsoft segnala che app rimosse o aggiornate possono riapparire o restare rilevabili se non si rimuove correttamente il provisioning. La documentazione spiega che, per rimuovere un’app provisioned, bisogna rimuovere il pacchetto di provisioning; in caso contrario le app possono ripresentarsi in determinate condizioni, per esempio durante aggiornamenti o per nuovi utenti.

Come rimuovere le applicazioni indesiderate da Windows 11, una volta per tutte

Allora, come abbiamo fatto a risolvere il problema? Innanzi tutto, abbiamo estratto da WinDirStat l’elenco completo delle applicazioni che in WindowsApps occupavano giga e giga di spazio quindi abbiamo digitato, in una finestra PowerShell (Windows+X, Terminale Admin o Windows+X, PowerShell amministratore) quanto segue:

  • Get-AppxPackage -AllUsers | Where-Object Name -match "Candy|Disney|March|HiddenCity|Minecraft" | Remove-AppxPackage -AllUsers
  • Get-AppxProvisionedPackage -Online | Where-Object DisplayName -match "Candy|Disney|March|HiddenCity|Minecraft" | Remove-AppxProvisionedPackage -Online

Il secondo comando agisce direttamente sull’immagine del sistema operativo e impedisce che le applicazioni indicate siano predisposte per i nuovi utenti.

Se fossero rimaste delle cartelle in WindowsApps, significa che i pacchetti sono stati rimossi correttamente a livello logico, ma sono rimasti dei residui fisici sul disco.

Per eliminare una cartella specifica bisogna eseguire tre comandi, sempre da PowerShell aperto come amministratore:

  • takeown /f "C:\Program Files\WindowsApps\nome_cartella" /r /d S
  • icacls "C:\Program Files\WindowsApps\nome_cartella" /grant administrators:F /t
  • Remove-Item "C:\Program Files\WindowsApps\nome_cartella" -Recurse -Force

Questi comandi non vanno usati “alla cieca” su tutta la cartella WindowsApps, ma solo sulle directory che si è verificato essere davvero inutilizzate (passate “indenni” ai comandi precedenti Get-AppxPackage e Get-AppxProvisionedPackage). Prima di cancellare qualsiasi cosa conviene sempre controllare che l’app non sia più presente con Get-AppxPackage -AllUsers nome_applicazione.

Applicazione delle policy per bloccare installazioni automatiche

Una volta pulito il sistema, conviene prevenire future reinstallazioni intervenendo sulle policy di sistema.

La prima chiave da impostare riguarda la disattivazione della cosiddetta Consumer Experience, responsabile della distribuzione automatica di app suggerite. L’impostazione riduce drasticamente l’installazione automatica di contenuti promozionali:

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\CloudContent" /v DisableWindowsConsumerFeatures /t REG_DWORD /d 1 /f

Per impedire download automatici da parte del Microsoft Store, si può aggiungere quanto segue. In questo modo il sistema non scaricherà più applicazioni in background senza intervento dell’utente:

reg add "HKLM\SOFTWARE\Policies\Microsoft\WindowsStore" /v AutoDownload /t REG_DWORD /d 2 /f

Per evitare che nuovi account ereditino impostazioni “sporche”, è eventualmente possibile intervenire sul profilo di default. Si procede caricando temporaneamente l’hive corrispondente:

reg load HKU\DefaultUser C:\Users\Default\NTUSER.DAT

Poi si disattivano i meccanismi di installazione automatica delle app in Windows 11:

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SilentInstalledAppsEnabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v PreInstalledAppsEnabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v PreInstalledAppsEverEnabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-338387Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-338388Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-338389Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-353693Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-353694Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-353696Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-353698Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-314559Enabled /t REG_DWORD /d 0 /f

reg add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SubscribedContent-310093Enabled /t REG_DWORD /d 0 /f

Infine si scarica l’hive:

reg unload HKU\DefaultUser

In questo modo ogni nuovo utente creato sul sistema eredita una configurazione già ottimizzata.

Applicare le policy sul profilo utente correntemente in uso

Le modifiche effettuate sul profilo di default valgono solo per i nuovi account. Per rendere effettive le stesse impostazioni anche per l’utente attualmente in uso, è necessario intervenire direttamente su HKCU (HKEY_CURRENT_USER).

Questo passaggio completa il lavoro: senza di esso, il sistema potrebbe continuare a proporre o installare contenuti indesiderati per l’utente corrente, anche se i nuovi account sono già “puliti”.

Per procedere, basta aprire una finestra PowerShell o del prompt dei comandi (cmd) con privilegi amministrativi e digitare i comandi reg add visti al paragrafo precedente, sostituendo HKU\DefaultUser con HKCU. Esempio:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SilentInstalledAppsEnabled /t REG_DWORD /d 0 /f

Conclusioni

Il caso analizzato dimostra come Windows 11 possa gestire le applicazioni in modo molto diverso rispetto ai modelli tradizionali: ciò che non compare nell’elenco delle app installate può comunque occupare spazio su disco, essere predisposto per altri utenti o venire reinstallato automaticamente in determinate condizioni.

La combinazione di Consumer Experience, provisioning e gestione “per utente” dei pacchetti rende il comportamento del sistema meno trasparente, soprattutto in contesti professionali dove ci si aspetta un controllo più rigoroso.

La soluzione non passa da un singolo intervento, ma da un approccio su più livelli che prevede identificazione dei pacchetti, rimozione per tutti gli utenti, eliminazione del provisioning, pulizia dei residui e applicazione di policy adeguate.

Ti consigliamo anche

Link copiato negli appunti