// script
Automating Windows Interface Customizations
User-context PowerShell to apply Windows 11 desktop, taskbar, and Explorer tweaks via Intune.
Apr 16, 2025
Windows Intune
PS> iwr https://www.cloudytechbrain.com/scripts/automate-windows-interface-customizations/raw.ps1 | iex
I had a customer asking for a script to automate several Windows interface elements, so a PowerShell script is here to save the day. Tested on Windows 11 24H2, YMMV. All sections are commented.
Note: If deploying with Intune, set the script to run in User context by selecting "Run this script using the logged on credentials".
What it does
- Disables Windows Spotlight, feedback prompts, and personalized suggestions.
- Adds the "This PC" icon to the desktop.
- Sets display scaling to 125% (takes effect after a fresh sign-in).
- Aligns the taskbar to the left and tweaks combine behavior.
- Hides Task View, Widgets, and Search on the taskbar.
- Launches File Explorer windows in separate processes for stability.
- Default apps must be handled separately via an Intune configuration profile.
<#
.SYNOPSIS
Applies desired user experience customizations to Windows 11 devices.
.DESCRIPTION
Deployed via Microsoft Intune as a user-context PowerShell script.
.NOTES
Author: Brian Wilson
Intended Deployment: Microsoft Intune (User Context)
Compatibility: Windows 11 (tested on 24H2)
#>
# === DISABLE SPOTLIGHT, FEEDBACK, SUGGESTIONS ===
$cdmPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager"
if (-not (Test-Path $cdmPath)) { New-Item -Path $cdmPath -Force | Out-Null }
Set-ItemProperty -Path $cdmPath -Name "SubscribedContent-310093Enabled" -Value 0
Set-ItemProperty -Path $cdmPath -Name "SubscribedContent-338387Enabled" -Value 0
Set-ItemProperty -Path $cdmPath -Name "SubscribedContent-338388Enabled" -Value 0
$upePath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\UserProfileEngagement"
if (-not (Test-Path $upePath)) { New-Item -Path $upePath -Force | Out-Null }
Set-ItemProperty -Path $upePath -Name "ScoobeSystemSettingEnabled" -Value 0
$siufPath = "HKCU:\Software\Microsoft\Siuf\Rules"
if (-not (Test-Path $siufPath)) { New-Item -Path $siufPath -Force | Out-Null }
Set-ItemProperty -Path $siufPath -Name "NumberOfSIUFInPeriod" -Value 0
Set-ItemProperty -Path $siufPath -Name "PeriodInNanoSeconds" -Value 0
# === ADD THIS PC ICON ===
$desktopIconsPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel"
if (-not (Test-Path $desktopIconsPath)) { New-Item -Path $desktopIconsPath -Force | Out-Null }
Set-ItemProperty -Path $desktopIconsPath -Name "{20D04FE0-3AEA-1069-A2D8-08002B30309D}" -Value 0
# === 125% DISPLAY SCALING ===
$dpiPath = "HKCU:\Control Panel\Desktop"
if (-not (Test-Path $dpiPath)) { New-Item -Path $dpiPath -Force | Out-Null }
Set-ItemProperty -Path $dpiPath -Name "LogPixels" -Value 120
Set-ItemProperty -Path $dpiPath -Name "Win8DpiScaling" -Value 1
# === TASKBAR TWEAKS ===
$advancedPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
if (-not (Test-Path $advancedPath)) { New-Item -Path $advancedPath -Force | Out-Null }
Set-ItemProperty -Path $advancedPath -Name "TaskbarAl" -Value 0
Set-ItemProperty -Path $advancedPath -Name "TaskbarGlomLevel" -Value 1
Set-ItemProperty -Path $advancedPath -Name "TaskbarDa" -Value 0
Set-ItemProperty -Path $advancedPath -Name "ShowTaskViewButton" -Value 0
Set-ItemProperty -Path $advancedPath -Name "SearchboxTaskbarMode" -Value 0
Set-ItemProperty -Path $advancedPath -Name "SeparateProcess" -Value 1
Stop-Process -Name explorer -Force
← Back