Last active
July 25, 2022 23:24
-
-
Save itsnebulalol/e54614e5055bfe9aa820d807bfca62d3 to your computer and use it in GitHub Desktop.
Removes some bloatware, cleans up registry keys, and makes Windows run better overall.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Unblock-File -LiteralPath $PSCommandPath -ErrorAction SilentlyContinue | Out-Null ; Add-MpPreference -ExclusionPath $PSScriptRoot -ErrorAction SilentlyContinue | Out-Null | |
If (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]'Administrator')) | |
{ | |
Start-Process powershell.exe "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`"" -Verb RunAs | |
Exit | |
} | |
Add-Type -AssemblyName System.Windows.Forms ; [System.Windows.Forms.Application]::EnableVisualStyles() | |
function Return-WindowsVersion | |
{ | |
[String] $ErrorActionPreference = "SilentlyContinue" | |
[String] $RegistryPath = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | |
[String] $RegistryKey = "ProductName" | |
[String] $Value = Get-ItemPropertyValue -Path $RegistryPath -Name $RegistryKey | Out-Null | |
if(Get-ItemPropertyValue -Path $RegistryPath -Name $RegistryKey) { | |
Return (Get-ItemPropertyValue -Path $RegistryPath -Name $RegistryKey) | |
} | |
} | |
if((Return-WindowsVersion) -notmatch "Windows 10") | |
{ | |
Write-Host "Please use " -NoNewline | |
Write-Host "Windows 10" -ForegroundColor Blue -NoNewline | |
Write-Host " or " -NoNewline | |
Write-Host "Windows 11" -ForegroundColor Cyan -NoNewline | |
Write-Host ".`n`n`n" -NoNewLine | |
Write-Host "Press any key to exit this script..." -ForegroundColor Red | |
$Console = [System.Console]::ReadKey() ;if($Console){Exit} | |
} | |
function Backup-Registry | |
{ | |
Write-Host "[+] Backing up registry..." | |
if (!(Test-Path $PSScriptRoot\RegistryBackups)) | |
{ | |
New-Item -Path $PSScriptRoot\RegistryBackups -ItemType Directory -Force | Out-Null | |
Write-Host "[+] Created backup folder for Registry Files!" | |
} | |
if (Test-Path $PSScriptRoot\RegistryBackups\CURRENTUSER.reg) | |
{ | |
if ([System.Windows.Forms.MessageBox]::Show("Current User registry backup is found, do you want to remove it? This is necessary if you'd like to backup your registry keys!", [String]::Empty, [System.Windows.Forms.MessageBoxButtons]::YesNo, [System.Windows.Forms.MessageBoxIcon]::Information) -match "Yes") | |
{ | |
Remove-Item -Path $PSScriptRoot\RegistryBackups\CURRENTUSER.reg -Force | |
Write-Host "[+] Previous Current User backup was removed!" | |
} | |
} | |
if (Test-Path $PSScriptRoot\RegistryBackups\LOCALMACHINE.reg) | |
{ | |
if ([System.Windows.Forms.MessageBox]::Show("Local Machine registry backup is found, do you want to remove it? This is necessary if you'd like to backup your registry keys!", [String]::Empty, [System.Windows.Forms.MessageBoxButtons]::YesNo, [System.Windows.Forms.MessageBoxIcon]::Information) -match "Yes") | |
{ | |
Remove-Item -Path $PSScriptRoot\RegistryBackups\LOCALMACHINE.reg -Force | |
Write-Host "[+] Previous Local Machine backup was removed!" | |
} | |
} | |
if (Test-Path $PSScriptRoot\RegistryBackups\CLASSESROOT.reg) | |
{ | |
if ([System.Windows.Forms.MessageBox]::Show("Classes Root registry backup is found, do you want to remove it? This is necessary if you'd like to backup your registry keys!", [String]::Empty, [System.Windows.Forms.MessageBoxButtons]::YesNo, [System.Windows.Forms.MessageBoxIcon]::Information) -match "Yes") | |
{ | |
Remove-Item -Path $PSScriptRoot\RegistryBackups\CLASSESROOT.reg -Force | |
Write-Host "[+] Previous Classes Root backup was removed!" | |
} | |
} | |
if (!(Test-Path $PSScriptRoot\RegistryBackups\CURRENTUSER.reg)) | |
{ | |
try | |
{ | |
REG EXPORT ([Microsoft.Win32.Registry]::CurrentUser) $PSScriptRoot\RegistryBackups\CURRENTUSER.reg | |
} | |
catch | |
{ | |
Write-Host "[-] Failed to backup Current User's registry!" | |
} | |
} | |
if (!(Test-Path $PSScriptRoot\RegistryBackups\LOCALMACHINE.reg)) | |
{ | |
try | |
{ | |
REG EXPORT ([Microsoft.Win32.Registry]::LocalMachine) $PSScriptRoot\RegistryBackups\LOCALMACHINE.reg | |
} | |
catch | |
{ | |
Write-Host "[-] Failed to backup Local Machine's registry!" | |
} | |
} | |
if (!(Test-Path $PSScriptRoot\RegistryBackups\CLASSESROOT.reg)) | |
{ | |
try | |
{ | |
REG EXPORT ([Microsoft.Win32.Registry]::ClassesRoot) $PSScriptRoot\RegistryBackups\CLASSESROOT.reg | |
} | |
catch | |
{ | |
Write-Host "[-] Failed to backup Classes Root registry!" | |
} | |
} | |
} | |
Write-Host "Hello! I'll remove some bloatware, clean up registry keys, and make Windows run better overall." | |
Read-Host -Prompt "Press any key to continue or CTRL+C to cancel" | |
Backup-Registry | |
Write-Host "[+] Creating restore point..." | |
Enable-ComputerRestore -Drive $env:SystemDrive | |
Checkpoint-Computer -Description "Better11Run" -RestorePointType "MODIFY_SETTINGS" | |
Write-Host "[+] Starting debloat..." | |
reg add "HKLM\Software\Policies\Microsoft\Windows\CloudContent" /v DisableWindowsConsumerFeatures /d 1 /t REG_DWORD /f | |
reg add "HKCU\Software\Policies\Microsoft\Windows\CloudContent" /v DisableWindowsConsumerFeatures /d 1 /t REG_DWORD /f | |
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v ContentDeliveryAllowed /d 0 /t REG_DWORD /f | |
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v SilentInstalledAppsEnabled /d 0 /t REG_DWORD /f | |
reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager\" /v SystemPaneSuggestionsEnabled /d 0 /t REG_DWORD /f | |
function ConfigureOOS10 | |
{ | |
param | |
( | |
[Parameter( | |
Mandatory = $true | |
)] | |
[ValidateScript({ | |
((Test-Path $_) -eq $true) -and (([System.IO.File]::GetAttributes($_) -match "Directory") -eq $true) | |
})] | |
[String] | |
$SavePath, | |
[Parameter( | |
Mandatory = $false | |
)] | |
[Switch] | |
$DeleteAfter | |
) | |
#Enable TLS 1.2 | |
if ([System.Net.ServicePointManager]::SecurityProtocol -notmatch "Tls12") | |
{ | |
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12 | |
} | |
if (!(Test-Path $env:TEMP\ooshutup10.exe)) | |
{ | |
try | |
{ | |
$Webclient = New-Object ([System.Net.WebClient]) | |
$Webclient.DownloadFile( | |
"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe", | |
"$env:TEMP\ooshutup10.exe" | |
) | |
} | |
catch | |
{ | |
Write-Host "[-] Script was unable to download OOSHUTUP10, maybe your internet is down?" | |
Return | |
} | |
} | |
if (Test-Path $env:TEMP\ooshutup10config.cfg) | |
{ | |
Remove-Item -Path $env:TEMP\ooshutup10config.cfg | |
} | |
try | |
{ | |
$Webclient = New-Object ([System.Net.WebClient]) | |
$Webclient.DownloadFile( | |
"https://cdn.discordapp.com/attachments/941050386335273054/941050420267208784/ooshutup10.cfg", | |
"$env:TEMP\ooshutup10config.cfg" | |
) | |
} | |
catch | |
{ | |
Write-Host "[-] Script was unable to download OOSHUTUP10's Config file, maybe your internet is down?" | |
Return | |
} | |
if ((Test-Path $env:TEMP\ooshutup10config.cfg) -and (Test-Path $env:TEMP\ooshutup10.exe)) | |
{ | |
Start-Process -FilePath $env:TEMP\ooshutup10.exe -ArgumentList "$env:TEMP\ooshutup10config.cfg /quiet" -Verb RunAs -Wait | |
if ($DeleteAfter) | |
{ | |
Remove-Item -Path $env:TEMP\ooshutup10config.cfg | |
Remove-Item -Path $env:TEMP\ooshutup10.exe | |
} | |
} | |
} | |
ConfigureOOS10 -SavePath $env:TEMP | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 0 | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser" | Out-Null | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Application Experience\ProgramDataUpdater" | Out-Null | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Autochk\Proxy" | Out-Null | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Customer Experience Improvement Program\Consolidator" | Out-Null | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Customer Experience Improvement Program\UsbCeip" | Out-Null | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector" | Out-Null | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "ContentDeliveryAllowed" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "OemPreInstalledAppsEnabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEnabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEverEnabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SilentInstalledAppsEnabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338387Enabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338388Enabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338389Enabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-353698Enabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SystemPaneSuggestionsEnabled" -Type DWord -Value 0 | |
If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent")) { | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableWindowsConsumerFeatures" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "EnableActivityFeed" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "PublishUserActivities" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "UploadUserActivities" -Type DWord -Value 0 | |
If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location")) { | |
New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Name "Value" -Type String -Value "Deny" | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}" -Name "SensorPermissionState" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration" -Name "Status" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\Maps" -Name "AutoUpdateEnabled" -Type DWord -Value 0 | |
If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules")) { | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Name "NumberOfSIUFInPeriod" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "DoNotShowFeedbackNotifications" -Type DWord -Value 1 | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Feedback\Siuf\DmClient" -ErrorAction SilentlyContinue | Out-Null | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload" -ErrorAction SilentlyContinue | Out-Null | |
If (!(Test-Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent")) { | |
New-Item -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableTailoredExperiencesWithDiagnosticData" -Type DWord -Value 1 | |
If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo")) { | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Name "DisabledByGroupPolicy" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting" -Name "Disabled" -Type DWord -Value 1 | |
Disable-ScheduledTask -TaskName "Microsoft\Windows\Windows Error Reporting\QueueReporting" | Out-Null | |
Stop-Service "DiagTrack" -WarningAction SilentlyContinue | |
Set-Service "DiagTrack" -StartupType Disabled | |
Stop-Service "dmwappushservice" -WarningAction SilentlyContinue | |
Set-Service "dmwappushservice" -StartupType Disabled | |
bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance" -Name "fAllowToGetHelp" -Type DWord -Value 0 | |
Stop-Service "SysMain" -WarningAction SilentlyContinue | |
Set-Service "SysMain" -StartupType Disabled | |
$taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru | |
Do { | |
Start-Sleep -Milliseconds 100 | |
$preferences = Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager" -Name "Preferences" -ErrorAction SilentlyContinue | |
} Until ($preferences) | |
Stop-Process $taskmgr | |
$preferences.Preferences[28] = 0 | |
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager" -Name "Preferences" -Type Binary -Value $preferences.Preferences | |
If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager")) { | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" -Name "EnthusiastMode" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowTaskViewButton" -Type DWord -Value 0 | |
If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People")) { | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" -Name "PeopleBand" -Type DWord -Value 0 | |
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 2147483650 | |
Add-Type -AssemblyName System.Windows.Forms | |
If (!([System.Windows.Forms.Control]::IsKeyLocked('NumLock'))) { | |
$wsh = New-Object -ComObject WScript.Shell | |
$wsh.SendKeys('{NUMLOCK}') | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "LaunchTo" -Type DWord -Value 1 | |
Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}" -Recurse -ErrorAction SilentlyContinue | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" -Name "SizReqBuf" -Type DWord -Value 17424 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name DefaultTTL -Value 64 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name TCP1323Opts -Value 1 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name MaxFreeTcbs -Value 65536 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name MaxUserPort -Value 65534 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name GlobalMaxTcpWindowSize -Value 65535 | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control" -Name "SvcHostSplitThresholdInKB" -Type DWord -Value 4194304 | |
if (!(Test-Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds")){ | |
New-Item -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Name "EnableFeeds" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Feeds" -Name "ShellFeedsTaskbarViewMode" -Type DWord -Value 2 | |
If (!(Test-Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer")) { | |
New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "HideSCAMeetNow" -Type DWord -Value 1 | |
$autoLoggerDir = "$env:PROGRAMDATA\Microsoft\Diagnosis\ETLLogs\AutoLogger" | |
If (Test-Path "$autoLoggerDir\AutoLogger-Diagtrack-Listener.etl") { | |
Remove-Item "$autoLoggerDir\AutoLogger-Diagtrack-Listener.etl" | |
} | |
icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null | |
If (!(Test-Path "HKLM:\Software\Policies\Microsoft\Windows\Personalization")) { | |
New-Item -Path "HKLM:\Software\Policies\Microsoft\Windows\Personalization" | Out-Null | |
} | |
If (!(Test-Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo")) { | |
New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo" | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo" -Name "Enabled" -Type DWord -Value 0 | |
if (!(Test-Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer")){ | |
New-Item -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer" -Name "SmartScreenEnabled" -Type String -Value "Off" | |
if (!(Test-Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\AppHost")){ | |
New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\AppHost" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\AppHost" -Name "EnableWebContentEvaluation" -Value 0 | |
if (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\HandwritingErrorReports")){ | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\HandwritingErrorReports" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\HandwritingErrorReports" -Name "PreventHandwritingErrorReports" -Type DWord -Value 1 | |
if (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors")){ | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors" -Name "DisableLocation" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors" -Name "DisableLocationScripting" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors" -Name "DisableSensors" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors" -Name "DisableWindowsLocationProvider" -Type DWord -Value 1 | |
if (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Maps")){ | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Maps" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Maps" -Name "AutoDownloadAndUpdateMapData" -Type DWord -Value 0 | |
if (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds")){ | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Name "EnableFeeds" -Type DWord -Value 0 | |
if (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR")){ | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR" -Name "AllowGameDVR" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\Control Panel\Accessibility\StickyKeys" -Name "Flags" -Value "506" | |
Set-ItemProperty -Path "HKCU:\Control Panel\Accessibility\Keyboard Response" -Name "Flags" -Value "122" | |
Set-ItemProperty -Path "HKCU:\Control Panel\Accessibility\ToggleKeys" -Name "Flags" -Value "58" | |
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management' -Name FeatureSettingsOverride -Value 3 | |
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management' -Name FeatureSettingsOverrideMask -Value 3 | |
$Services = @( | |
#"*xbox*" # Xbox Services | |
#"*Xbl*" # Xbox Services | |
#"XboxNetApiSvc" # Xbox Services | |
#"LanmanWorkstation" # Causes problems with Mapped Drives and File Sharing Programs! | |
#"workfolderssvc" # Causes problems with Mapped Drives and File Sharing Programs! | |
#"WSearch" # Windows Search | |
#"PushToInstall" # Needed for Microsoft Store | |
#"icssvc" # Mobile Hotspot | |
"MixedRealityOpenXRSvc" # Mixed Reality | |
"WMPNetworkSvc" # Windows Media Player Sharing | |
#"LicenseManager" # License Manager for Microsoft Store | |
#"wisvc" # Insider Program | |
"WerSvc" # Error Reporting | |
#"WalletService" # Wallet Service | |
#"lmhosts" # TCP/IP NetBIOS Helper | |
#"SysMain" # SuperFetch - Safe to disable if you have a SSD | |
#"svsvc" # Spot Verifier | |
#"sppsvc" # Software Protection | |
"SCPolicySvc" # Smart Card Removal Policy | |
"ScDeviceEnum" # Smart Card Device Enumeration Service | |
"SCardSvr" # Smart Card | |
#"LanmanServer" # Server # Causes problems with Mapped Drives and File Sharing Programs! | |
#"SensorService" # Sensor Service | |
"RetailDemo" # Retail Demo Service | |
#"RemoteRegistry" # Remote Registry # Issue by V1ce | |
#"UmRdpService" # Remote Desktop Services UserMode Port Redirector # Issue by V1ce | |
#"TermService" # Remote Desktop Services # Issue by V1ce | |
#"SessionEnv" # Remote Desktop Configuration # Issue by V1ce | |
#"RasMan" # Remote Access Connection Manager # Issue by V1ce | |
#"RasAuto" # Remote Access Auto Connection Manager # Issue by V1ce | |
#"TroubleshootingSvc" # Recommended Troubleshooting Service | |
#"RmSvc" # Radio Management Service (Might be needed for laptops) | |
#"QWAVE" # Quality Windows Audio Video Experience | |
#"wercplsupport" # Problem Reports Control Panel Support | |
#"Spooler" # Print Spooler # Issue by V1ce | |
#"PrintNotify" # Printer Extensions and Notifications # Issue by V1ce | |
#"PhoneSvc" # Phone Service | |
#"SEMgrSvc" # Payments and NFC/SE Manager | |
"WpcMonSvc" # Parental Controls | |
#"CscService" # Offline Files | |
#"InstallService" # Microsoft Store Install Service | |
#"SmsRouter" # Microsoft Windows SMS Router Service | |
#"smphost" # Microsoft Storage Spaces SMP | |
#"NgcCtnrSvc" # Microsoft Passport Container | |
#"MsKeyboardFilter" # Microsoft Keyboard Filter ... thanks (.AtomRadar treasury ♛#8267) for report. | |
#"cloudidsvc" # Microsoft Cloud Identity Service | |
#"wlidsvc" # Microsoft Account Sign-in Assistant | |
"*diagnosticshub*" # Microsoft (R) Diagnostics Hub Standard Collector Service | |
#"iphlpsvc" # IP Helper - Might break some VPN Clients | |
#"lfsvc" # Geolocation Service # Issue by V1ce | |
#"fhsvc" # File History Service # Issue by V1ce | |
#"Fax" # Fax # Issue by V1ce | |
#"embeddedmode" # Embedded Mode | |
"MapsBroker" # Downloaded Maps Manager | |
"TrkWks" # Distributed Link Tracking Client | |
"WdiSystemHost" # Diagnostic System Host | |
"WdiServiceHost" # Diagnostic Service Host | |
"DPS" # Diagnostic Policy Service | |
"diagsvc" # Diagnostic Execution Service | |
#"DusmSvc" # Data Usage | |
#"VaultSvc" # Credential Manager | |
#"AppReadiness" # App Readiness | |
) | |
foreach ($Service in $Services) { | |
Get-Service -Name $Service -ErrorAction SilentlyContinue | Set-Service -StartupType Disabled | |
if($Service.Status -match "Run"){ | |
Stop-Service -Name $Service -Force -ErrorAction SilentlyContinue | Out-Null | |
} | |
} | |
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\DoSvc" -Name Start -Value 4 | |
[Array] @( | |
"\Microsoft\Windows\ApplicationData\CleanupTemporaryState" | |
"\Microsoft\Windows\ApplicationData\DsSvcCleanup" | |
"\Microsoft\Windows\AppxDeploymentClient\Pre-stagedappcleanup" | |
"\Microsoft\Windows\Autochk\Proxy" | |
"\Microsoft\Windows\BrokerInfrastructure\BgTaskRegistrationMaintenanceTask" | |
"\Microsoft\Windows\capabilityaccessmanager\maintenancetasks" | |
"\Microsoft\Windows\Chkdsk\ProactiveScan" | |
"\Microsoft\Windows\Chkdsk\SyspartRepair" | |
"\Microsoft\Windows\Clip\LicenseValidation" | |
"\Microsoft\Windows\CloudExperienceHost\CreateObjectTask" | |
"\Microsoft\Windows\CustomerExperienceImprovementProgram\Consolidator" | |
"\Microsoft\Windows\CustomerExperienceImprovementProgram\UsbCeip" | |
"\Microsoft\Windows\Defrag\ScheduledDefrag" | |
"\Microsoft\Windows\DeviceInformation\Device" | |
"\Microsoft\Windows\DeviceInformation\DeviceUser" | |
"\Microsoft\Windows\DeviceSetup\MetadataRefresh" | |
"\Microsoft\Windows\ExploitGuard\ExploitGuardMDMpolicyRefresh" | |
"\Microsoft\Windows\Feedback\Siuf\DmClient" | |
"\Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload" | |
"\Microsoft\Windows\FileHistory\FileHistory*" | |
"\Microsoft\Windows\Location\Notifications" | |
"\Microsoft\Windows\Location\WindowsActionDialog" | |
"\Microsoft\Windows\Maps\MapsToastTask" | |
"\Microsoft\Windows\Maps\MapsUpdateTask" | |
"\Microsoft\Windows\MemoryDiagnostic\ProcessMemoryDiagnosticEvents" | |
"\Microsoft\Windows\MemoryDiagnostic\RunFullMemoryDiagnostic" | |
"\Microsoft\Windows\MUI\LPRemove" | |
"\Microsoft\Windows\Multimedia\SystemSoundsService" | |
"\Microsoft\Windows\OfflineFiles\BackgroundSynchronization" | |
"\Microsoft\Windows\OfflineFiles\LogonSynchronization" | |
"\Microsoft\Windows\Printing\EduPrintProv" | |
"\Microsoft\Windows\Printing\PrinterCleanupTask" | |
"\Microsoft\Windows\PushToInstall\LoginCheck" | |
"\Microsoft\Windows\PushToInstall\Registration" | |
"\Microsoft\Windows\RetailDemo\CleanupOfflineContent" | |
"\Microsoft\Windows\Servicing\StartComponentCleanup" | |
"\Microsoft\Windows\Setup\SetupCleanupTask" | |
"\Microsoft\Windows\SharedPC\AccountCleanup" | |
"\Microsoft\Windows\UNP\RunUpdateNotificationMgr" | |
"\Microsoft\Windows\WindowsErrorReporting\QueueReporting" | |
"\Microsoft\XblGameSave\XblGameSaveTask" | |
) | ForEach-Object{ | |
Disable-ScheduledTask -TaskName $_ -ErrorAction SilentlyContinue | Out-Null | |
Write-Host "Task `"$($_)`" was disabled" | |
} | |
if(!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching")){ New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching" -Force -ErrorAction SilentlyContinue } | |
if(!(Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power")){ New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power" -Force -ErrorAction SilentlyContinue } | |
if(!(Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling")){ New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling" -Force -ErrorAction SilentlyContinue } | |
if(!(Test-Path "HKCU:\System\GameConfigStore")){ New-Item -Path "HKCU:\System\GameConfigStore" -Force -ErrorAction SilentlyContinue } | |
if(!(Test-Path "HKCU:\Control Panel\Desktop")){ New-Item -Path "HKCU:\Control Panel\Desktop" -Force -ErrorAction SilentlyContinue } | |
if(!(Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\943c8cb6-6f93-4227-ad87-e9a3feec08d1")){ New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\943c8cb6-6f93-4227-ad87-e9a3feec08d1" -Force -ErrorAction SilentlyContinue } | |
if(!(Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c")){ New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c" -Force -ErrorAction SilentlyContinue } | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching' -Name 'SearchOrderConfig' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power' -Name 'HiberbootEnabled' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling' -Name 'PowerThrottlingOff' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'GameDVR_Enabled' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'GameDVR_FSEBehaviorMode' -Value 2 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'Win32_AutoGameModeDefaultProfile' -Value ([byte[]](0x01,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00)) -PropertyType Binary -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'Win32_GameModeRelatedProcesses' -Value ([byte[]](0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00)) -PropertyType Binary -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'GameDVR_HonorUserFSEBehaviorMode' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'GameDVR_DXGIHonorFSEWindowsCompatible' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\System\GameConfigStore' -Name 'GameDVR_EFSEFeatureFlags' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\Control Panel\Desktop' -Name 'MenuShowDelay' -Value '0' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\Control Panel\Desktop' -Name 'WaitToKillAppTimeout' -Value '5000' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\Control Panel\Desktop' -Name 'HungAppTimeout' -Value '4000' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\Control Panel\Desktop' -Name 'AutoEndTasks' -Value '1' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\Control Panel\Desktop' -Name 'LowLevelHooksTimeout' -Value 4096 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKCU:\Control Panel\Desktop' -Name 'WaitToKillServiceTimeout' -Value 8192 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\943c8cb6-6f93-4227-ad87-e9a3feec08d1' -Name 'Attributes' -Value 2 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e' -Name 'ACSettingIndex' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e' -Name 'DCSettingIndex' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c' -Name 'ACSettingIndex' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e' -Name 'ACSettingIndex' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e' -Name 'DCSettingIndex' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c' -Name 'ACSettingIndex' -Value 0 -PropertyType DWord -Force -ea SilentlyContinue; | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" -Name "BingSearchEnabled" -Type DWord -Value 0 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" -Name "CortanaConsent" -Type DWord -Value 0 | |
If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search")) { | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" -Name "DisableWebSearch" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" -Name "SearchboxTaskbarMode" -Type DWord -Value 0 | |
If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Personalization\Settings")) { | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Personalization\Settings" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Personalization\Settings" -Name "AcceptedPrivacyPolicy" -Type DWord -Value 0 | |
If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization")) { | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization" -Name "RestrictImplicitTextCollection" -Type DWord -Value 1 | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization" -Name "RestrictImplicitInkCollection" -Type DWord -Value 1 | |
If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore")) { | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" -Name "HarvestContacts" -Type DWord -Value 0 | |
If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search")) { | |
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" -Name "AllowCortana" -Type DWord -Value 0 | |
Stop-Process -Name "SearchApp" -Force -PassThru -ErrorAction SilentlyContinue | |
Get-ChildItem -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications" | ForEach-Object{ | |
Set-ItemProperty -Path $_.PsPath -Name "Disabled" -Type DWord -Value 1 | |
Set-ItemProperty -Path $_.PsPath -Name "DisabledByUser" -Type DWord -Value 1 | |
} | |
if (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications")){ | |
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications" -Force | Out-Null | |
} | |
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications" -Name "GlobalUserDisabled" -Type DWord -Value 1 | |
New-Item -Path "HKCU:\SOFTWARE\Classes\CLSID" -Force | Out-Null | |
New-Item -Path "HKCU:\SOFTWARE\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" -Force | Out-Null | |
New-Item -Path "HKCU:\SOFTWARE\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" -Force -Value "" | Out-Null | |
$BloatwareList = @( | |
"Microsoft.BingNews" | |
"Microsoft.GetHelp" | |
"Microsoft.Getstarted" | |
"Microsoft.Messaging" | |
"Microsoft.Microsoft3DViewer" | |
"Microsoft.MicrosoftOfficeHub" | |
"Microsoft.MicrosoftSolitaireCollection" | |
"Microsoft.NetworkSpeedTest" | |
"Microsoft.News" | |
"Microsoft.Office.Lens" | |
"Microsoft.Office.OneNote" | |
"Microsoft.Office.Sway" | |
"Microsoft.OneConnect" | |
"Microsoft.People" | |
"Microsoft.Print3D" | |
"Microsoft.RemoteDesktop" | |
"Microsoft.SkypeApp" | |
"Microsoft.StorePurchaseApp" | |
"Microsoft.Office.Todo.List" | |
"Microsoft.Whiteboard" | |
"Microsoft.WindowsAlarms" | |
#"Microsoft.WindowsCamera" | |
"microsoft.windowscommunicationsapps" | |
"Microsoft.WindowsFeedbackHub" | |
"Microsoft.WindowsMaps" | |
"Microsoft.WindowsSoundRecorder" | |
"Microsoft.Xbox.TCUI" | |
"Microsoft.XboxApp" | |
"Microsoft.XboxGameOverlay" | |
"Microsoft.XboxIdentityProvider" | |
"Microsoft.XboxSpeechToTextOverlay" | |
"Microsoft.ZuneMusic" | |
"Microsoft.ZuneVideo" | |
# Sponsored apps | |
"*EclipseManager*" | |
"*ActiproSoftwareLLC*" | |
"*AdobeSystemsIncorporated.AdobePhotoshopExpress*" | |
"*Duolingo-LearnLanguagesforFree*" | |
"*PandoraMediaInc*" | |
"*CandyCrush*" | |
"*BubbleWitch3Saga*" | |
"*Wunderlist*" | |
"*Flipboard*" | |
"*Twitter*" | |
"*Facebook*" | |
"*Spotify*" | |
"*Minecraft*" | |
"*Royal Revolt*" | |
"*Sway*" | |
"*Speed Test*" | |
"*Dolby*" | |
) | |
foreach($Bloat in $BloatwareList){ | |
if((Get-AppxPackage -Name $Bloat).NonRemovable -eq $false) | |
{ | |
Get-AppxPackage -Name $Bloat | Remove-AppxPackage -ErrorAction SilentlyContinue | Out-Null | |
Get-AppxProvisionedPackage -Online | Where-Object DisplayName -like $Bloat | Remove-AppxProvisionedPackage -Online -ErrorAction SilentlyContinue | |
} | |
} | |
$Keys = @( | |
#Remove Background Tasks | |
"HKCR:\Extensions\ContractId\Windows.BackgroundTasks\PackageId\46928bounde.EclipseManager_2.2.4.51_neutral__a5h4egax66k6y" | |
"HKCR:\Extensions\ContractId\Windows.BackgroundTasks\PackageId\ActiproSoftwareLLC.562882FEEB491_2.6.18.18_neutral__24pqs290vpjk0" | |
"HKCR:\Extensions\ContractId\Windows.BackgroundTasks\PackageId\Microsoft.MicrosoftOfficeHub_17.7909.7600.0_x64__8wekyb3d8bbwe" | |
"HKCR:\Extensions\ContractId\Windows.BackgroundTasks\PackageId\Microsoft.PPIProjection_10.0.15063.0_neutral_neutral_cw5n1h2txyewy" | |
"HKCR:\Extensions\ContractId\Windows.BackgroundTasks\PackageId\Microsoft.XboxGameCallableUI_1000.15063.0.0_neutral_neutral_cw5n1h2txyewy" | |
"HKCR:\Extensions\ContractId\Windows.BackgroundTasks\PackageId\Microsoft.XboxGameCallableUI_1000.16299.15.0_neutral_neutral_cw5n1h2txyewy" | |
#Windows File | |
"HKCR:\Extensions\ContractId\Windows.File\PackageId\ActiproSoftwareLLC.562882FEEB491_2.6.18.18_neutral__24pqs290vpjk0" | |
#Registry keys to delete if they aren't uninstalled by RemoveAppXPackage/RemoveAppXProvisionedPackage | |
"HKCR:\Extensions\ContractId\Windows.Launch\PackageId\46928bounde.EclipseManager_2.2.4.51_neutral__a5h4egax66k6y" | |
"HKCR:\Extensions\ContractId\Windows.Launch\PackageId\ActiproSoftwareLLC.562882FEEB491_2.6.18.18_neutral__24pqs290vpjk0" | |
"HKCR:\Extensions\ContractId\Windows.Launch\PackageId\Microsoft.PPIProjection_10.0.15063.0_neutral_neutral_cw5n1h2txyewy" | |
"HKCR:\Extensions\ContractId\Windows.Launch\PackageId\Microsoft.XboxGameCallableUI_1000.15063.0.0_neutral_neutral_cw5n1h2txyewy" | |
"HKCR:\Extensions\ContractId\Windows.Launch\PackageId\Microsoft.XboxGameCallableUI_1000.16299.15.0_neutral_neutral_cw5n1h2txyewy" | |
#Scheduled Tasks to delete | |
"HKCR:\Extensions\ContractId\Windows.PreInstalledConfigTask\PackageId\Microsoft.MicrosoftOfficeHub_17.7909.7600.0_x64__8wekyb3d8bbwe" | |
#Windows Protocol Keys | |
"HKCR:\Extensions\ContractId\Windows.Protocol\PackageId\ActiproSoftwareLLC.562882FEEB491_2.6.18.18_neutral__24pqs290vpjk0" | |
"HKCR:\Extensions\ContractId\Windows.Protocol\PackageId\Microsoft.PPIProjection_10.0.15063.0_neutral_neutral_cw5n1h2txyewy" | |
"HKCR:\Extensions\ContractId\Windows.Protocol\PackageId\Microsoft.XboxGameCallableUI_1000.15063.0.0_neutral_neutral_cw5n1h2txyewy" | |
"HKCR:\Extensions\ContractId\Windows.Protocol\PackageId\Microsoft.XboxGameCallableUI_1000.16299.15.0_neutral_neutral_cw5n1h2txyewy" | |
#Windows Share Target | |
"HKCR:\Extensions\ContractId\Windows.ShareTarget\PackageId\ActiproSoftwareLLC.562882FEEB491_2.6.18.18_neutral__24pqs290vpjk0" | |
) | |
ForEach ($Key in $Keys) { | |
Remove-Item $Key -Recurse | |
} | |
#Disables Windows Feedback Experience | |
$Advertising = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo" | |
If (Test-Path $Advertising) { | |
Set-ItemProperty $Advertising Enabled -Value 0 | |
} | |
#Stops Cortana from being used as part of your Windows Search Function | |
$Search = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" | |
If (Test-Path $Search) { | |
Set-ItemProperty $Search AllowCortana -Value 0 | |
} | |
#Disables Web Search in Start Menu | |
$WebSearch = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" | |
Set-ItemProperty "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" BingSearchEnabled -Value 0 | |
If (!(Test-Path $WebSearch)) { | |
New-Item $WebSearch | |
} | |
Set-ItemProperty $WebSearch DisableWebSearch -Value 1 | |
#Stops the Windows Feedback Experience from sending anonymous data | |
$Period = "HKCU:\Software\Microsoft\Siuf\Rules" | |
If (!(Test-Path $Period)) { | |
New-Item $Period | |
} | |
Set-ItemProperty $Period PeriodInNanoSeconds -Value 0 | |
#Prevents bloatware applications from returning and removes Start Menu suggestions | |
$registryPath = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" | |
$registryOEM = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" | |
If (!(Test-Path $registryPath)) { | |
New-Item $registryPath | |
} | |
Set-ItemProperty $registryPath DisableWindowsConsumerFeatures -Value 1 | |
If (!(Test-Path $registryOEM)) { | |
New-Item $registryOEM | |
} | |
Set-ItemProperty $registryOEM ContentDeliveryAllowed -Value 0 | |
Set-ItemProperty $registryOEM OemPreInstalledAppsEnabled -Value 0 | |
Set-ItemProperty $registryOEM PreInstalledAppsEnabled -Value 0 | |
Set-ItemProperty $registryOEM PreInstalledAppsEverEnabled -Value 0 | |
Set-ItemProperty $registryOEM SilentInstalledAppsEnabled -Value 0 | |
Set-ItemProperty $registryOEM SystemPaneSuggestionsEnabled -Value 0 | |
#Preping mixed Reality Portal for removal | |
$Holo = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Holographic" | |
If (Test-Path $Holo) { | |
Set-ItemProperty $Holo FirstRunSucceeded -Value 0 | |
} | |
#Disables Wi-fi Sense | |
$WifiSense1 = "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" | |
$WifiSense2 = "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" | |
$WifiSense3 = "HKLM:\SOFTWARE\Microsoft\WcmSvc\wifinetworkmanager\config" | |
If (!(Test-Path $WifiSense1)) { | |
New-Item $WifiSense1 | |
} | |
Set-ItemProperty $WifiSense1 Value -Value 0 | |
If (!(Test-Path $WifiSense2)) { | |
New-Item $WifiSense2 | |
} | |
Set-ItemProperty $WifiSense2 Value -Value 0 | |
Set-ItemProperty $WifiSense3 AutoConnectAllowedOEM -Value 0 | |
#Disables live tiles | |
$Live = "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\PushNotifications" | |
If (!(Test-Path $Live)) { | |
New-Item $Live | |
} | |
Set-ItemProperty $Live NoTileApplicationNotification -Value 1 | |
#Turns off Data Collection via the AllowTelemtry key by changing it to 0 | |
$DataCollection1 = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" | |
$DataCollection2 = "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" | |
$DataCollection3 = "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection" | |
If (Test-Path $DataCollection1) { | |
Set-ItemProperty $DataCollection1 AllowTelemetry -Value 0 | |
} | |
If (Test-Path $DataCollection2) { | |
Set-ItemProperty $DataCollection2 AllowTelemetry -Value 0 | |
} | |
If (Test-Path $DataCollection3) { | |
Set-ItemProperty $DataCollection3 AllowTelemetry -Value 0 | |
} | |
#Disabling Location Tracking | |
$SensorState = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}" | |
$LocationConfig = "HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration" | |
If (!(Test-Path $SensorState)) { | |
New-Item $SensorState | |
} | |
Set-ItemProperty $SensorState SensorPermissionState -Value 0 | |
If (!(Test-Path $LocationConfig)) { | |
New-Item $LocationConfig | |
} | |
Set-ItemProperty $LocationConfig Status -Value 0 | |
#Disables People icon on Taskbar | |
$People = 'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People' | |
If (Test-Path $People) { | |
Set-ItemProperty $People -Name PeopleBand -Value 0 | |
} | |
#Disables scheduled tasks that are considered unnecessary | |
Get-ScheduledTask XblGameSaveTaskLogon | Disable-ScheduledTask | |
Get-ScheduledTask XblGameSaveTask | Disable-ScheduledTask | |
Get-ScheduledTask Consolidator | Disable-ScheduledTask | |
Get-ScheduledTask UsbCeip | Disable-ScheduledTask | |
Get-ScheduledTask DmClient | Disable-ScheduledTask | |
Get-ScheduledTask DmClientOnScenarioDownload | Disable-ScheduledTask | |
#Disabling the Diagnostics Tracking Service | |
Stop-Service "DiagTrack" | |
Set-Service "DiagTrack" -StartupType Disabled | |
$CloudStore = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\CloudStore' | |
If (Test-Path $CloudStore) { | |
Stop-Process Explorer.exe -Force | |
Remove-Item $CloudStore -Recurse -Force | |
Start-Process Explorer.exe -Wait | |
} | |
if(!(Test-Path -LiteralPath "HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership")){ | |
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership") -ne $true){ | |
New-Item "HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership" -force -ea SilentlyContinue | |
} | |
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership\command") -ne $true){ | |
New-Item "HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership\command" -force -ea SilentlyContinue | |
} | |
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership") -ne $true){ | |
New-Item "HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership" -force -ea SilentlyContinue | |
} | |
if((Test-Path -LiteralPath "HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership\command") -ne $true){ | |
New-Item "HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership\command" -force -ea SilentlyContinue | |
} | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership' -Name '(default)' -Value 'Take Ownership' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership' -Name 'HasLUAShield' -Value '' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership' -Name 'NoWorkingDirectory' -Value '' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership' -Name 'Position' -Value 'middle' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership\command' -Name '(default)' -Value 'powershell -windowstyle hidden -command "Start-Process cmd -ArgumentList ''/c takeown /f \"%1\" && icacls \"%1\" /grant *S-1-3-4:F /c /l'' -Verb runAs' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\*\shell\TakeOwnership\command' -Name 'IsolatedCommand' -Value 'powershell -windowstyle hidden -command "Start-Process cmd -ArgumentList ''/c takeown /f \"%1\" && icacls \"%1\" /grant *S-1-3-4:F /c /l'' -Verb runAs' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership' -Name '(default)' -Value 'Take Ownership' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership' -Name 'AppliesTo' -Value 'NOT (System.ItemPathDisplay:="C:\Users" OR System.ItemPathDisplay:="C:\ProgramData" OR System.ItemPathDisplay:="C:\Windows" OR System.ItemPathDisplay:="C:\Windows\System32" OR System.ItemPathDisplay:="C:\Program Files" OR System.ItemPathDisplay:="C:\Program Files (x86)")' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership' -Name 'HasLUAShield' -Value '' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership' -Name 'NoWorkingDirectory' -Value '' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership' -Name 'Position' -Value 'middle' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership\command' -Name '(default)' -Value 'powershell -windowstyle hidden -command "Start-Process cmd -ArgumentList ''/c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant *S-1-3-4:F /c /l /q'' -Verb runAs' -PropertyType String -Force -ea SilentlyContinue; | |
New-ItemProperty -LiteralPath 'HKLM:\SOFTWARE\Classes\Directory\shell\TakeOwnership\command' -Name 'IsolatedCommand' -Value 'powershell -windowstyle hidden -command "Start-Process cmd -ArgumentList ''/c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant *S-1-3-4:F /c /l /q'' -Verb runAs' -PropertyType String -Force -ea SilentlyContinue; | |
} | |
if (Test-Path $env:TEMP\better11.bat) | |
{ | |
Remove-Item "$env:TEMP\better11.bat" | |
} | |
try | |
{ | |
$Webclient = New-Object ([System.Net.WebClient]) | |
$Webclient.DownloadFile( | |
"https://gist.githubusercontent.com/itsnebulalol/82dbe8bc6a6e38c95d2f176355422477/raw/f61edff1db801ed10e1a2d01071b340645364a99/better11.bat", | |
"$env:TEMP\better11.bat" | |
) | |
} | |
catch | |
{ | |
Write-Host "[-] Script was unable to download the extra batch file for Better11, maybe your internet is down? You can try again by rerunning the script!" | |
} | |
Write-Host "[+] Starting extra script" | |
Start-Process "cmd.exe" "/c $env:TEMP\better11.bat" | |
Write-Host "[+] Restarting explorer..." | |
Stop-Process -processName: Explorer | |
Write-Host "We're finished! Please restart your computer to finalize changes." | |
Read-Host -Prompt "Press any key to exit" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment