top of page
Search

(176) Microsoft Intune - Set Start Menu to not startup on logon

  • Writer: Mr B SOE way
    Mr B SOE way
  • Aug 27
  • 2 min read

Updated: Aug 29

I have this customer who I have been helping over a period of time with setting up their 'Shared PCs' with some customisations, one of which he mentioned yesterday about disabling the start menu to not startup on logon.



To apply to current user only:


Wrap this up as a win32 app:


reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v StartShownOnUpgrade /t REG_DWORD /d 1 /f

Alternatively you can deploy as a PowerShell script:


if((Test-Path -LiteralPath "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced") -ne $true) {  New-Item "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -force -ea SilentlyContinue };
New-ItemProperty -LiteralPath 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced' -Name 'StartShownOnUpgrade' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue;

To apply to all users who login to the device:


As we are applying to all users, you will need edit the ntuser.dat in order for the changes to take place:


Wrap this up as a win32 app:

reg.exe add "HKU\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v StartShownOnUpgrade /t REG_DWORD /d 1 /f

Alternatively you can deploy this a a PowerShell:

if((Test-Path -LiteralPath "Registry::\HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced") -ne $true) {  New-Item "Registry::\HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -force -ea SilentlyContinue };
New-ItemProperty -LiteralPath 'Registry::\HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced' -Name 'StartShownOnUpgrade' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue;

To wrap as a win32 app:

#region Config
$AppName = $PName + "_"+ $Pversion +"_Package"
$client = "MR B SOE Way"
$logPath = "$env:ProgramData\$client\logs"
$logFile = "$logPath\Disable Start Menu on First Logon.log"

#endregion
#region Logging
if (!(Test-Path -Path $logPath)) {
    New-Item -Path $logPath -ItemType Directory -Force | Out-Null
}


Start-Transcript -Path $logFile -Force

Write-Host "Disable Start Menu on First Logon...."

# Create a tag file just so Intune knows this was installed
    if (-not (Test-Path "$($env:ProgramData)\MRB\StartMenu")) {
        Mkdir "$($env:ProgramData)\MrB\StartMenu"
    }
    Set-Content -Path "$($env:ProgramData)\MrB\StartMenu\StartMenu.ps1.tag" -Value "Installed"

if((Test-Path -LiteralPath "Registry::\HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced") -ne $true) {  New-Item "Registry::\HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -force -ea SilentlyContinue };
New-ItemProperty -LiteralPath 'Registry::\HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced' -Name 'StartShownOnUpgrade' -Value 1 -PropertyType DWord -Force -ea SilentlyContinue;

Write-Host "Script completed successfully.."
Stop-Transcript

if (test-path "C:\ProgramData\MrB\StartMenu\StartMenu.ps1.tag"){"Installed"} 

Make sure to deploy as "System" context, ensure to add the win32 app to the ESP.


On deployment, when you login you won't see the start menu load up after you login


 
 
 

Comments


bottom of page