Windows 10: Start menu not in alphabetical order

  1.    20 Apr 2016 #1

    Start menu not in alphabetical order


    I normally organize and rename the shortcuts in the start menu (in the folder ...\ProgramData\Microsoft\Windows\Start Menu) to shorter or more memorable names. However, my start menu is not in alphabetical order anymore.

    For example: I've renamed "Adobe Photoshop CC 2015" to "Photoshop" and "Adobe Premiere Pro CC 2015" to "Premiere". So, I expect that the programs would be listed under "P" in my start menu, but, they're still on top of my menu, renamed, under the "A" letter.

    This process has always worked, until now. Is there something I can do to fix it?

    Thank you in advance,
      My ComputerSystem Spec

  2.    21 Apr 2016 #2

    Hi, I think the problem is that the Win 10 start menu does not behave in the same way as traditional start menus in respect of legacy folder-based menus we're used to.

    Many of my 'normal' entries in my start menu aren't even present in the Win 10 start menu. Subfolders (E.g. the folder created by a program I install containing its shortcuts) aren't even shown in the Win 10 start menu.. all the shortcuts under one letter in the start menu are linear- extracted from their folders producing this sort of absurdity:
    Click image for larger version. 

Name:	Untitled.png 
Views:	9 
Size:	426.8 KB 
ID:	75916

    That's why I use Classic Shell- which works as I expect.
      My ComputerSystem Spec

  3.    21 Apr 2016 #3

    What I do is create shortcuts with the name I want. These then show up normally in the start menu, sorted correctly and with the name I chose.

    What I found is that you need to put the shortcuts in C:\Users\<your name>\AppData\Roaming\Microsoft\Windows\Start Menu rather than in %programdata% directory. I'm not sure why as either should work but for me (since 10586) only the user account seems to work.

    Just putting programs in the start definitely does not work on Windows 10 - you need shortcuts for sure.

    If you are interested I use this script to create the requied shortcuts.

    You don't need it all but perhaps you can see what I'm doing here - it will create shortcuts for all programs and powershell scripts (running them as admin if required) and stick them in your start menu.

    It is a bit annoying to have to do this (and I guess I could use another start menu program instead) but I just like to do things myself sometimes so I know why things are showing up.

    # Shortcuts will be created in $ShortcutRoot for programs found in $ExeRoot (except for $Exclusions)
    $ShortcutRoot=$Home + "\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\"
    $Exclusions = @("gdisk64","nvspbind","StartKiller","UnlockerInject32")
    $PoShExeRoot="D:\Users\Hali\OneDrive\Programs\Powershell Scripts\"
    $PoShShortcutRoot=$Home + "\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Powershell Scripts\"
    $PoShExclusions = @("Sleep Mac Transmission","Wake Mac Transmission","WakeTransmission")
    $SysinternalsShortcutRoot=$Home + "\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\SysinternalsSuite\"
    $SysinternalsExclusions = @(
    # Check set-up
    Write-Host "Shortcuts will be created in " -NoNewline; Write-Host $ShortcutRoot -f White
    Write-Host "for programs found in " -NoNewline; Write-Host $ExeRoot -NoNewline -f White; Write-Host " and " -NoNewline; Write-Host $SysinternalsExeRoot -f White
    $title="Keep folder structure for shortcuts?"
    $message="Enter choice"
    $choices = @(
    	@("Yes", "Keep existing structure"),
    	@("No",  "Create Shortcuts in root directory"),
    $options = @($i=0;$choices |
    	%{New-Object System.Management.Automation.Host.ChoiceDescription "&$i`b$($_[0])", $_[1]; $i++})
    $result = $host.ui.PromptForChoice($title, $message, $options, 1)
    $choice = $choices[$result][0]
    Switch ($result)
    {	0 {$Consolidate=$False}
    	1 {$Consolidate=$True}
    	2 {exit}
    Function Set-Admin 
    # Set the Run As Administrator flag
    ($file) {
    	if (-not (Test-Path $file)) { Write-Host "File not found                                   " -NoNewline -f red; Write-Host "$file" -f red }
    	else {
    		$bytes = [System.IO.File]::ReadAllBytes($file)
    		$bytes[0x15] = $bytes[0x15] -bor 0x20 #set byte 21 (0x15) bit 6 (0x20) ON (Use –bor to set RunAsAdministrator option and –bxor to unset)
    		[System.IO.File]::WriteAllBytes($file, $bytes)
    		Write-Host "Administrator authority granted                  " -NoNewline -f green; Write-Host "$file" -f White
    Function Create-Shortcuts 
    # Create shortcuts for all non-excluded .exe
    ($ExeRoot,$ShortcutRoot,$Exclusions,$Consolidate,$Recurse) {
    	# Get all program objects
    	if ($Recurse) {$Apps=Get-ChildItem -path $ExeRoot -include @("*.exe","*.ps1") -recurse}
    	else {$Apps=Get-ChildItem -path "$ExeRoot*" -include @("*.exe","*.ps1")}
    	Foreach ($App in $Apps) {
            $IconPath=(Split-Path $App.FullName -parent)+"\"+[io.path]::GetFileNameWithoutExtension($App.FullName)+'.ico'	
    		if ($consolidate) { 
    		} else { 
    			$ShortcutPath=([io.path]::ChangeExtension($ShortcutRoot + $App.FullName.SubString($ExeRoot.Length), '.lnk'))
    		if (Test-Path $ShortcutPath) { Write-Host "Shortcut exists                                  " -NoNewline -f cyan; Write-Host "$ShortcutPath" -f white }
    		elseif ($Exclusions -contains $App.BaseName) { Write-Host " excluded                                        " -NoNewline -f red; Write-Host "$App" -f red }
    		else {
    			# Create directory if required
    			$ShortcutDirectory = Split-Path $ShortcutPath -parent
    			if (-not (Test-Path $ShortcutDirectory )) { New-Item -ItemType Directory -Path $ShortcutDirectory -Force }
    			# Create Shortcut
    			$WshShell=New-Object -ComObject WScript.Shell
    			If([io.path]::GetExtension($App.FullName) -eq '.exe') {
                    $Shortcut.TargetPath = $App.FullName
                } Else {
                    $Shortcut.TargetPath ='%systemroot%\system32\WindowsPowerShell\v1.0\powershell.exe'
                    $Shortcut.Arguments = '-ExecutionPolicy Bypass -File "'+$App.FullName+'"'
    			if (Test-Path $IconPath) {$Shortcut.IconLocation = $IconPath}
    			$Shortcut.WorkingDirectory = Split-Path $App.FullName -parent
    			Write-Host "Shortcut created                                 " -NoNewline -f green; Write-Host $ShortcutPath -f White
    			# Make Powershell shortcuts run as administrator			
    			If([io.path]::GetExtension($App.FullName) -eq '.ps1') {Set-Admin $ShortcutPath}
    Write-Host "EXEs Processed" -f Yellow; Write-Host
    # Sysinternals Programs
    Create-Shortcuts $SysinternalsExeRoot $SysinternalsShortcutRoot $SysinternalsExclusions $True $False
    # sync.exe (want to add icon)
    $WshShell=New-Object -ComObject WScript.Shell
    $Shortcut.TargetPath = "$SysinternalsExeRoot\sync.exe"
    $Shortcut.WorkingDirectory = "$SysinternalsExeRoot"
    $Shortcut.IconLocation = "%SystemRoot%\system32\shell32.dll,217" # (54 accross *4 deep + 1 down = 217 in the dll)
    Write-Host "Shortcut created                                 " -NoNewline -f green; Write-Host $SysinternalsShortcutRoot"sync.lnk" -f White
    # Set various shortcuts to run as Admin
    Set-Admin "$SysinternalsShortcutRoot`Autoruns.lnk"
    Set-Admin "$SysinternalsShortcutRoot`procexp.lnk"
    Set-Admin "$SysinternalsShortcutRoot`Procmon.lnk"
    Set-Admin "$SysinternalsShortcutRoot`sync.lnk"
    # Powershell scripts
    Create-Shortcuts $PoShExeRoot $PoShShortcutRoot $PoShExclusions $True $True
    # Other Programs
    # Get Programs in root
    Create-Shortcuts $ExeRoot $ShortcutRoot $Exclusions $True $False
    # Get programs in sub-directories (except Sysinternals)
    $OtherDirs = Get-ChildItem -path $ExeRoot -dir -exclude "SysinternalsSuite","Powershell Scripts"
    Foreach ($OtherDir in $OtherDirs) {
    	if (-not $Consolidate) { $ShortcutRoot=$SavedShortcutRoot+$OtherDir.Name+"\" }
    	Create-Shortcuts $ExeRoot $ShortcutRoot $Exclusions $Consolidate $True
    # Set various shortcuts to run as Admin
    Set-Admin "$ShortcutRoot`windirstat.lnk"
    Set-Admin "$ShortcutRoot`TreeSizeFree.lnk"
    # Other Shortcuts
    $WshShell = New-Object -ComObject WScript.Shell
    $Shortcut=$WshShell.CreateShortcut("$ShortcutRoot\God Mode.lnk")
    $Shortcut.TargetPath = $Shortcut.TargetPath = "$env:systemroot\explorer.exe"
    $Shortcut.Arguments = "shell:::{ED7BA470-8E54-465E-825C-99712043E01C}"
    Write-Host "Shortcut created                                 " -NoNewline -f green; Write-Host $ShortcutRoot"God Mode.lnk" -f White
    if (-not(Test-Path "$ShortcutRoot\TN5250")) {New-Item -ItemType Directory -Path "$ShortcutRoot\TN5250" -Force}
    Copy-Item $ExeRoot\TN5250\PUB1.lnk $ShortcutRoot\TN5250\
    Copy-Item $ExeRoot\TN5250\SIASDEV.lnk $ShortcutRoot\TN5250\
    Move-Item $ShortcutRoot\TN5250.lnk $ShortcutRoot\TN5250\
    # Rename any odd named
    if (Test-Path "$ShortcutRoot\TFC.lnk") {Rename-Item "$ShortcutRoot\TFC.lnk" "$ShortcutRoot\Temp File Cleaner.lnk"} 
    if (Test-Path "$ShortcutRoot\Rapr.lnk") {Rename-Item "$ShortcutRoot\Rapr.lnk" "$ShortcutRoot\Driver Store Explorer.lnk"}
    Read-Host -Prompt "Press Enter to exit"
      My ComputerSystem Spec


Related Threads
The Windows Photo Viewer will not display photos in the order they are sorted by Windows Explorer. This is not referring to the slide show feature, just the forward and back arrows. The only order pictures can be viewed is by name despite Windows...
I am using Windows 10 for around 2 days now. But today my computer freezed while playing a game, so i restarted my computer and when i logged in, the start menu,notification menu and metro apps would not open anymore. Whats is happening?
Either the Windows 10 start menu really sucks or I am using it wrong. I am used to the StartisBack/Windows 7 menu where you can pin anything and all applications will come up in search results. In the Windows 10 menu, I can't pin anything to the...
I successfully imported my favorites from Chrome into EDGE. However they are in reverse alphabetical order. Is there any way to resort into alphabetical order? I can't find a way. Thanks
Our Sites
Site Links
About Us
Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

© Designer Media Ltd
All times are GMT -5. The time now is 14:01.
Find Us