Windows 11 Start Menu Left Align

Windows 11 Start Menu Left Align

While some users already got used to Windows 11's centered start menu, for some it's so new one might call it inconvenient. An easy way to pre-configure a Win11 device during autopilot is loading the default user's ntused.dat and tampering with the setting in there.

Deploying this during enrollment with PSADT as a device-required win32 app does the trick nicely.

Simply paste this to the INSTALLATION section of the PS App Deployment Toolkit, IntuneWin it and all new users logging in will have the menu on the left, still allowing them to move it to the center if they prefer. It will also gracefully skip the config on Windows 10 machines and create some logs just in case :-)

(On LinkedIN I posted this earlier with matching 10.0.22. Fixed now, as 24H2's version number starts with 10.0.26)


        $iswin11 = ([environment]::OSVersion.Version.ToString() -match "10.0.2")

        if ($iswin11){
            & REG LOAD HKLM\DEFUSRPROFILE C:\users\default\NTUSER.DAT
            Push-Location 'HKLM:\DEFUSRPROFILE\Software\Microsoft\Windows\CurrentVersion\Explorer'
            if (!(Test-Path Advanced)){
                Write-Warning "Advanced key is missing"
                New-Item Advanced
            }
            New-ItemProperty -Path .\Advanced -Name TaskbarAl -Value 0 -PropertyType DWORD -Force
            Pop-Location
            $unloaded = $false
            $try = 0
            while (!$unloaded -and ($try -le 5)){
                [gc]::Collect()
                & REG UNLOAD HKLM\DEFUSRPROFILE
                $unloaded = $?
                $try += 1
            }
            if (!$unloaded){
                Write-Warning "Cannot unload reg key, manual dismount required"
            }
            $f = "c:\windows\Logs\IMTW"
            $imtw = Test-Path $f
            if (-not $imtw){
                New-Item -ItemType Directory -Path "c:\windows\Logs" -Name "IMTW"
            }
            New-Item -Path 'c:\windows\Logs\IMTW' -ItemType File -Name 'Win11StartMenu.log'
            Add-Content -Path 'c:\windows\Logs\IMTW\Win11StartMenu.log' -Value "Windows 11 Start menu was switched to the left"

        }else{
            $f = "c:\windows\Logs\IMTW"
            $imtw = Test-Path $f
            if (-not $imtw){
                New-Item -ItemType Directory -Path "c:\windows\Logs" -Name "IMTW"
            }
            New-Item -Path 'c:\windows\Logs\IMTW' -ItemType File -Name 'Win11StartMenu.log'
            Add-Content -Path 'c:\windows\Logs\IMTW\Win11StartMenu.log' -Value "This is not a Windows 11 device, skipping..."        
        }