Disassembler

Artificial intelligence is no match for natural stupidity.
14října2015

Jak z Windows 10 udělat desktopový systém II


Komplementární článek k Jak z Windows 10 udělat desktopový systém, popisující, jak provedené úpravy uvést do původního stavu.

Děkuji předem i zadem


Předtím, než vůbec začnu se samotným článkem, rád bych všem poděkoval za návštěvnost a ohlasy. Původní článek Jak z Windows 10 udělat desktopový systém má v současné době přes 50000 unikáních zhlédnutí, což je na malý soukromý volnočasový blogísek docela dost. Někteří mi ale psali, že mám příliš velký záběr témat a že je můj blog pro obyčejného člověka těžko stravitelný. Rád bych tedy zdůraznil, že i přesto, že za vyšší příčky ve vyhledávačích vděčím těm obyčejným lidem, nechci psát o obyčejných věcech. Nebaví mě psát o všedních každodenních problémech jiných lidí a většinou to pro mě už ani není zajímavé, protože podpora koncových uživatelů je první stupínek v potravním řetězci „ajťáků“, který už mám dávno za sebou. Internet je takových věcí plný a připadá mi jako ztráta času omílat tentýž obsah dokola. Naopak mě baví psát o problémech, které vyžadují směsici znalostí z různých technologických koutů a které při googlení vrací výsledky jen s velmi kusým nebo neúplným řešením. To je zároveň i důvod, proč takovou fádní věc, jako přizpůsobení operačního systému, kde se dá téměř vše jednoduše vyklikat myší, automatizuju a řeším skrze takový krkolomný způsob, jakým je PowerShell. Pokud si tedy obyčejný člověk i přes má varování rozdrbe nastavení, pak bych byl rád, aby nepřišel plakat za mnou, ale problém si vyřešil za použití google, seznamu, živě, mimibazaru nebo jakkoliv jinak, jak obvykle obyčejní lidé technické problémy řeší. Následující článek je tedy psán výhradně na žádost ctěného čtenářstva a ve snaze ulehčit mému svědomí při představě toho množství lidí, kteří absolutně nemají páru, co se může stát, ale přesto kdejaký kus kódu i přes opakovaná nedoporučení ochotně spustí.

K lesu čelem, k Ivanovi zády


Struktura odstavců je úplně stejná jako v původním článku Jak z Windows 10 udělat desktopový systém, ale snippet tentokrát příslušnou věc zapíná nebo obnovuje do původního nastavení tak, jak je poskytováno ve výchozí, nepřizpůsobené instalaci českých 64bitových Windows 10 Pro. Nechci s tím plevelit už tak šíleně dlouhý původní článek s modifikacemi, nicméně do souhrnného skriptu jsem je v zakomentované formě přidal. Jak by ti bystřejší mohli čekat, většina návratů do původního nastavení sestává z jednoduchého smazání příslušného klíče v registrech nebo z přepnutí vypnuto – zapnuto.

Obsah:

Zapnutí Telemetry


# Enable Telemetry
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 3
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 3
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 3

Zapnutí Wi-Fi Sense


# Enable Wi-Fi Sense
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" -Name "Value" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" -Name "Value" -Type DWord -Value 1

Zapnutí SmartScreen Filtru


# Enable SmartScreen Filter
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" -Name "SmartScreenEnabled" -Type String -Value "RequireAdmin"
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost" -Name "EnableWebContentEvaluation"

Zapnutí Bingu v nabídce Start


# Enable Bing Search in Start Menu
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" -Name "BingSearchEnabled"

Zobrazení navrhovaných aplikací v nabídce Start


# Enable Start Menu suggestions
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SystemPaneSuggestionsEnabled" -Type DWord -Value 1

Zapnutí zjišťování polohy


# Enable Location Tracking
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}" -Name "SensorPermissionState" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration" -Name "Status" -Type DWord -Value 1

Zapnutí Feedbacku


# Enable Feedback
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Name "NumberOfSIUFInPeriod"

Zapnutí Advertising ID


Připomínám, že pokud nepoužíváte Microsoft účet, je tato úprava bezpředmětná.

# Enable Advertising ID
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo" -Name "Enabled"

Zapnutí Cortany


Cortana v našich zeměpisných šířkách funguje všelijak, takže tohle „zapnutí“ ji pouze uvede do původního stavu. Dokud se Cortana nenaučí česky, budete mít zřejmě zašedlé posuvníky pořád.

# Enable Cortana
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Personalization\Settings" -Name "AcceptedPrivacyPolicy"
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization" -Name "RestrictImplicitTextCollection" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization" -Name "RestrictImplicitInkCollection" -Type DWord -Value 0
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" -Name "HarvestContacts"

Odstranění omezení Windows Update P2P


V některých edicích (např. Enterprise) je P2P nastaveno na místní síť i ve výchozím stavu, takže opět záleží na vaší instalaci, zda odstranění těchto hodnot skutečně něco změní.

# Unrestrict Windows Update P2P
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Name "DODownloadMode"
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization" -Name "SystemSettingsDownloadMode"

Zapnutí AutoLoggeru


# Unrestrict AutoLogger directory
$autoLoggerDir = "$env:PROGRAMDATA\Microsoft\Diagnosis\ETLLogs\AutoLogger"
icacls $autoLoggerDir /grant:r SYSTEM:`(OI`)`(CI`)F | Out-Null

Zapnutí Diagnostics Tracking služby


# Enable and start Diagnostics Tracking Service
Set-Service "DiagTrack" -StartupType Automatic
Start-Service "DiagTrack"

Zapnutí WAP Push služby


# Enable and start WAP Push Service
Set-Service "dmwappushservice" -StartupType Automatic
Start-Service "dmwappushservice"
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\dmwappushservice" -Name "DelayedAutoStart" -Type DWord -Value 1

Zvýšení úrovně UAC


# Raise UAC level
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "ConsentPromptBehaviorAdmin" -Type DWord -Value 5
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "PromptOnSecureDesktop" -Type DWord -Value 1

Vypnutí sdílení namapovaných disků


# Disable sharing mapped drives between users
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "EnableLinkedConnections"

Zapnutí sdílení implicitně sdílených položek


# Enable implicit administrative shares
Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" -Name "AutoShareWks"

Zapnutí Windows Firewallu


# Enable Firewall
Set-NetFirewallProfile -Profile * -Enabled True

Alternativně nepowershellovsky

netsh advfirewall set allprofiles state on

Zapnutí Windows Defenderu


# Enable Windows Defender
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender" -Name "DisableAntiSpyware"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" -Name "WindowsDefender" -Type ExpandString -Value "`"%ProgramFiles%\Windows Defender\MSASCuiL.exe`""

Zapnutí Nástroje pro odstranení škodlivého softwaru


# Enable offering of Malicious Software Removal Tool through Windows Update
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\MRT" -Name "DontOfferThroughWUAU"

Zapnutí automatického restartu Windows Update


# Enable Windows Update automatic restart
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "UxOption" -Type DWord -Value 0

Zapnutí Domácích Skupin


# Enable and start Home Groups services
Set-Service "HomeGroupListener" -StartupType Manual
Set-Service "HomeGroupProvider" -StartupType Manual
Start-Service "HomeGroupProvider"

Zapnutí Vzdálené Podpory


# Enable Remote Assistance
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance" -Name "fAllowToGetHelp" -Type DWord -Value 1

Vypnutí Vzdálené Plochy


# Disable Remote Desktop
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "UserAuthentication" -Type DWord -Value 1

Zapnutí Centra Akcí


# Enable Action Center
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer" -Name "DisableNotificationCenter"
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications" -Name "ToastEnabled"

Nezapomeňte zase zatrhat všechny checkboxy v Ovládací panely\Systém a zabezpečení\Zabezpečení a údržba\Změnit nastavení ovládacího panelu Zabezpečení a údržba, pokud jste je předtím vypnuli.

Zapnutí uzamykací obrazovky


# Enable Lock screen
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" -Name "NoLockScreen"
# Enable Lock screen (Anniversary Update workaround)
Unregister-ScheduledTask -TaskName "Disable LockScreen" -Confirm:$false -ErrorAction SilentlyContinue

Zapnutí autorun a autoplay


# Enable Autoplay
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers" -Name "DisableAutoplay" -Type DWord -Value 0

# Enable Autorun
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "NoDriveTypeAutoRun"

Zapnutí funkce „Jedním prstem“


Přesněji řečeno se jedná o povolení klávesové zkratky (5x shift) která zapnutí funkce umožňuje.

# Enable Sticky keys prompt
Set-ItemProperty -Path "HKCU:\Control Panel\Accessibility\StickyKeys" -Name "Flags" -Type String -Value "510"

Zobrazení vyhledávacího tlačítka / boxu


# Show Search Box / Button
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" -Name "SearchboxTaskbarMode"

Zobrazení tlačítka Task View


# Show Task View button
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowTaskViewButton"

Zvětšení ikon v liště a skrytí popisků


# Show large icons in taskbar
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarSmallIcons"

# Hide titles in taskbar
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarGlomLevel"

Skrytí nepotřebných ikon v systray


# Hide tray icons as needed
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" -Name "EnableAutoTray"

Skrytí přípon souborů známých typů


# Hide known file extensions
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "HideFileExt" -Type DWord -Value 1

Skrytí skrytých souborů


Yo dawg...

# Hide hidden files
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "Hidden" -Type DWord -Value 2

Změna výchozího pohledu Průzkumníka


# Change default Explorer view to Quick Access
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "LaunchTo"

Skrytí ikony „Tento Počítač“ z plochy


# Hide This PC shortcut from desktop
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu" -Name "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel" -Name "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"

Zobrazení ikon knihoven v přehledu disků


# Add Desktop icon to This PC
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"

# Add Documents icon to This PC
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{f42ee2d3-909f-4907-8871-4c22fc0bf756}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{f42ee2d3-909f-4907-8871-4c22fc0bf756}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"

# Add Downloads icon to This PC
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{7d83ee9b-2244-4e70-b1f5-5393042af1e4}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{7d83ee9b-2244-4e70-b1f5-5393042af1e4}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"

# Add Music icon to This PC
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{a0c69a99-21c8-4671-8703-7934162fcf1d}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{a0c69a99-21c8-4671-8703-7934162fcf1d}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"

# Add Pictures icon to This PC
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{0ddd015d-b06c-45d5-8c4c-f59713854639}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{0ddd015d-b06c-45d5-8c4c-f59713854639}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"

# Add Videos icon to This PC
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{35286a68-3c57-41a1-bbb1-0eae73d76c95}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{35286a68-3c57-41a1-bbb1-0eae73d76c95}\PropertyBag" -Name "ThisPCPolicy" -Type String -Value "Show"

Odebrání sekundární anglické klávesnice


# Remove secondary en-US keyboard
$langs = Get-WinUserLanguageList
Set-WinUserLanguageList ($langs | ? {$_.LanguageTag -ne "en-US"}) -Force

Vypnutí NumLocku po startu


# Disable NumLock after startup
If (!(Test-Path "HKU:")) {
	New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null
}
Set-ItemProperty -Path "HKU:\.DEFAULT\Control Panel\Keyboard" -Name "InitialKeyboardIndicators" -Type DWord -Value 2147483648

Zapnutí OneDrive


# Enable OneDrive
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\OneDrive" -Name "DisableFileSyncNGSC"

Reinstalace OneDrive


Oproti odinstalaci až triviálně jednoduché. Prostě jen najdete binárku a bez jakýchkoliv paramterů ji spustíte.

# Install OneDrive
$onedrive = "$env:SYSTEMROOT\SysWOW64\OneDriveSetup.exe"
If (!(Test-Path $onedrive)) {
	$onedrive = "$env:SYSTEMROOT\System32\OneDriveSetup.exe"
}
Start-Process $onedrive -NoNewWindow

Reinstalace výchozích Microsoft aplikací


Tady se trochu rozpovídám. Pokud jste odinstalaci provedli způsobem, který popisuji v odstavci Odstranění výchozích Microsoft aplikací článku Jak z Windows 10 udělat desktopový systém, pak je možno aplikace obnovit jednoduše takto:

# Install default Microsoft applications
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.3DBuilder").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.BingFinance").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.BingNews").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.BingSports").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.BingWeather").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.Getstarted").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.MicrosoftOfficeHub").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.MicrosoftSolitaireCollection").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.Office.OneNote").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.People").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.SkypeApp").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.Windows.Photos").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.WindowsAlarms").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.WindowsCamera").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.windowscommunicationsapps").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.WindowsMaps").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.WindowsPhone").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.WindowsSoundRecorder").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.XboxApp").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.ZuneMusic").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.ZuneVideo").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.AppConnector").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.ConnectivityStore").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.Office.Sway").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.Messaging").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.CommsPhone").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "4DF9E0F8.Netflix").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Drawboard.DrawboardPDF").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.MicrosoftStickyNotes").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.OneConnect").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "D52A8D61.FarmVille2CountryEscape").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "GAMELOFTSA.Asphalt8Airborne").InstallLocation)\AppXManifest.xml"
Add-AppxPackage -DisableDevelopmentMode -Register "$($(Get-AppXPackage -AllUsers "Microsoft.WindowsFeedbackHub").InstallLocation)\AppXManifest.xml"

Pokud jste ale následovali některé rady v komentářích, případně návody jinde na internetu, mohlo se vám stát, že jste si aplikaci odstranili s disku úplně. To nejlépe poznáte tak, že vám příkaz

Get-AppXPackage -AllUsers "jmeno_aplikace"

Nevrátí žádný výsledek. V takovém případě ještě existuje záložní řešení, které je však ještě o kus náročnější a potenciálně nebezpečnější a tím pádem jej opět nemůžu doporučit méně zkušeným uživatelům. Je k němu potřeba instalační médium, ze kterého pomocí nástroje pro úpravu WIM (obrazů Windows) namountujete předpřipravený instalační obraz a z něho si smazané soubory vyzobnete a zkopírujete. Jsem si celkem jistý, že podobného výsledku by bylo možno dosáhnout i pomocí funkce obnovení do továrního nastavení, ale ta by společně s chybějícími aplikacemi obnovila podstatně víc věcí, což nemusí být vždy žádoucí. Eskapádu s kopírováním z instalačního média provedete třeba následovně:

New-Item C:\Mnt -Type Directory | Out-Null
dism /Mount-Image /ImageFile:D:\sources\install.wim /index:1 /ReadOnly /MountDir:C:\Mnt
robocopy /S /SEC /R:0 "C:\Mnt\Program Files\WindowsApps" "C:\Program Files\WindowsApps"
dism /Unmount-Image /Discard /MountDir:C:\Mnt
Remove-Item -Path C:\Mnt –Recurse

New-Item vytvoří adresář, do kterého následně první dism příkaz namountuje WIM obraz. D:\sources\install.wim je cesta na instalačním médiu. robocopy pak rekurzivně zkopíruje adresář WindowsApps s daty Metro aplikací. Kopíruje je zároveň se zachováním oprávnění a využívá takový malý špinavý trik. Aplikace, které se vám zatím smazat nepodařilo, jsou u vás na disku vlastněny uživatelem TrustedInstaller a robocopy je nebude moct přepsat, což je dobře. Naproti tomu aplikace, které se vám odstranit podařilo, bude možno zapsat znovu, protože zápisu nebude nikdo bránit. Nedivte se tedy, že vám robocopy oznámí, že kopírování několika tisíců souborů selhalo. Na závěr po sobě už jen uklidíte. Druhým dism příkazem WIM odmountujete a prázdnou složku pak smažete. Poté už byste měli být schopni výše zmíněným Get-AppXPackage -AllUsers aplikaci najít a pomocí Add-AppxPackage i nainstalovat do vašeho uživatelského profilu. Nechci zabíhat moc do detailů co se nástroje dism týče, takže se jen omezím na varování, že se jedná o velmi mocný nástroj pro tvorbu a úpravu instalačních a live obrazů Windows, který na pozadí využívají všechny další nástroje typu vLite, NTLite a spol. Povídání o něm by hravě vydalo na celý článek (a možná někdy v budoucnu i vydá).

Zapnutí Xbox DVR


# Enable Xbox DVR
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR" -Name "AllowGameDVR" -ErrorAction SilentlyContinue

Reinstalace Windows Media Playeru


# Install Windows Media Player
dism /online /Enable-Feature /FeatureName:MediaPlayback /Quiet /NoRestart

Reinstalace klienta Pracovních Složek


# Install Work Folders Client
dism /online /Enable-Feature /FeatureName:WorkFolders-Client /Quiet /NoRestart

Odstranění linuxového subsystému


# Uninstall Linux Subsystem
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" -Name "AllowDevelopmentWithoutDevLicense" -Type DWord -Value 0
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" -Name "AllowAllTrustedApps" -Type DWord -Value 0
dism /online /Disable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux /Quiet /NoRestart

Zrušení asociací Windows Photo Vieweru


# Remove or reset default open action for bmp, gif, jpg and png
If (!(Test-Path "HKCR:")) {
	New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT | Out-Null
}
Remove-Item -Path "HKCR:\Paint.Picture\shell\open" -Recurse
Remove-ItemProperty -Path "HKCR:\giffile\shell\open" -Name "MuiVerb"
Set-ItemProperty -Path "HKCR:\giffile\shell\open" -Name "CommandId" -Type String -Value "IE.File"
Set-ItemProperty -Path "HKCR:\giffile\shell\open\command" -Name "(Default)" -Type String -Value "`"$env:SystemDrive\Program Files\Internet Explorer\iexplore.exe`" %1"
Set-ItemProperty -Path "HKCR:\giffile\shell\open\command" -Name "DelegateExecute" -Type String -Value "{17FE9752-0B5A-4665-84CD-569794602F5C}"
Remove-Item -Path "HKCR:\jpegfile\shell\open" -Recurse
Remove-Item -Path "HKCR:\pngfile\shell\open" -Recurse

# Remove Photo Viewer from "Open with..."
If (!(Test-Path "HKCR:")) {
	New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT | Out-Null
}
Remove-Item -Path "HKCR:\Applications\photoviewer.dll\shell\open" -Recurse

Vypnutí boot menu


# Disable F8 boot menu options
bcdedit /set `{current`} bootmenupolicy Standard | Out-Null

All-in-one


Skript stahujte z mého GitHubu. Pamatujte však na to, že pořád slouží k původnímu účelu popsanému v článku Jak z Windows 10 udělat desktopový systém a výše uvedené snippety pro návrat do původního stavu jsou v něm zakomentované.