Add Desktop Icons on Windows 10 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu] ;This PC "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"=dword:00000001 ;Network "{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"=dword:00000001 ;Recycle Bin "{645FF040-5081-101B-9F08-00AA002F954E}"=dword:00000001 ;User's Files "{59031a47-3f72-44a7-89c5-5595fe6b30ee}"=dword:00000001 ;Control Panel "{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"=dword:00000001 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel] ;This PC "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"=dword:00000001 ;Network "{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"=dword:00000001 ;Recycle Bin "{645FF040-5081-101B-9F08-00AA002F954E}"=dword:00000001 ;User's Files "{59031a47-3f72-44a7-89c5-5595fe6b30ee}"=dword:00000001 ;Control Panel "{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"=dword:00000001
Or: Right click on Desktop -> Personalize -> Themes -> Desktop icon settings -> tick the icons you want to have on Desktop
i can decide which update to install, especially for driver sometimes old driver is working better than new one
I had a session a while back playing all the different context menu tweaks I found on the net and had a bash with the registry, app definitions and cascading context menus. This is how my 7 has been looking and 99% of these transfer to 10 as well. I wasn't happy with the 'User Folder' and wanted to do a lot more with it but I hit the limit that explorer could handle and if I added any more they either overrode existing ones or just didnt show. Theres a nice toggle in the menu to turn them on and off as well. In 10 I have added some extra menus with the Modern Apps and a few more 10 specific options but I need to sit down and rework them a little. It isnt everybody's cup of tea mind but I like it. https:// imgur.com/a/k56dE#0
I tried this one, and it works! you will get a download button when there are updates ( just like if you have the power saver option enabled when on battery)! and install button after! ( win 10 pro 10240).
definitely not my intention to show off! Yeah in 10 Im gonna rework it a lot more with easier ways to get to stuff etc, took ages to figure it all out and theres a lot of redundent stuff in there currently. I tech for a fair amount of family and friends (as we all do!) and it helps with support so they are not clicking though 'places' they don't usually go and things are a click or two away. Heres a quick guide though to see how I got there: Spoiler App definitions: These are kept in Explorer\CommandStore and used to define a command, be it a app or otherwise. The 'name' you give it will be called from later either to put in a menu array for a cascade or just to call on a normal button. eg: CCleaner - 'named' it APPccleaner and added the command for which to run Code: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\APPccleaner] @="Open CCleaner..." "Icon"="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\APPccleaner\command] @="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" For this example I would have defined all four of Pirform tools and their respective commands : Code: APPccleaner APPdefraggler APPrecuva APPspeccy This doesn't do much on its own so we have to add it to a context menu: The RecycleBin is: HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\ So you add a new command, I called it piriform, the MUIVerb is what you want displayed, the Icon location and the SubCommands are where we call the previously defined apps Code: [HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\piriform] "MUIVerb"="Piriform Tools" "Icon"="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" "SubCommands"="APPccleaner;APPdefraggler;APPrecuva;APPspeccy" Once you have several apps or commands 'defined' you can then create a cascade from them: Code: ;Piriform Array [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\arraypiriform] "MUIVerb"="Piriform Tools" "icon"="control.exe" "SubCommands"="APPccleaner;APPdefraggler;APPrecuva;APPspeccy" Here I've created an 'array' with all four apps. I can easily add this cascade to the RecycleBin>Piriform menu by calling it just like a defined app Code: [HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\piriform] "MUIVerb"="Piriform Tools" "Icon"="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" "SubCommands"="APPccleaner;arraypiriform" This will give you a menu called "Piriform Tools" inside it will have CCleaner and a flyout called "Piriform Tools" which includes of all four tools. If you are just having one menu then you dont need to define the arrays you can just call the name directly. Its when you want to create the extra flyout for the cascade you need the array. The biggest/longest part of it all was defining the apps and arrays! The main places you will be adding stuff too are: My Computer/This PC: [HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\] Desktop: [HKEY_CLASSES_ROOT\DesktopBackground\Shell\] RecycleBin [HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\] Any and every file/folder: [HKEY_CLASSES_ROOT\*\shell\] Folders and background: [HKEY_CLASSES_ROOT\Directory\shell\] [HKEY_CLASSES_ROOT\Directory\Background\shell\] [HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\] Hope that makes some sort of sense? Heres one for the Attributes Advanced menu which is slightly more involved: Spoiler Code: Define the commands in command store: ;Archive ;Set Selected File(s) as Archive [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveon] @="Set Selected File(s) as Archive" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveon\command] @="attrib +a \"%1\"" ;Unset Archive for Selected File(s) [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveoff] @="Unset Archive for Selected File(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveoff\command] @="attrib -a \"%1\"" ;Set Files in Selected Folder(s) as Archive [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveon] @="Set Files in Selected Folder(s) as Archive" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveon\command] @="attrib +a \"%1\\*.*\" /S /D" ;Unset Files in Selected Folder(s) as Archive [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveoff] @="Unset Archive for Files in Selected Folder(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveoff\command] @="attrib -a \"%1\\*.*\" /S /D" ;System ;Set Selected File(s) as System [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemon] @="Set Selected File(s) as System" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemon\command] @="attrib +s \"%1\"" ;Unset System for Selected File(s) [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemoff] @="Unset System for Selected File(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemoff\command] @="attrib -s \"%1\"" ;Set Files in Selected Folder(s) as System [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemon] @="Set Files in Selected Folder(s) as System" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemon\command] @="attrib +s \"%1\\*.*\" /S /D" ;Unset Files in Selected Folder(s) as System [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemoff] @="Unset System for Files in Selected Folder(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemoff\command] @="attrib -s \"%1\\*.*\" /S /D Defining the arrays: Code: ;Archive Array [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\arrayarchive] "MUIVerb"="Archive" "Icon"="explorer.exe" "SubCommands"="filearchiveon;filearchiveoff;folderarchiveon;folderarchiveoff" ;System Array [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\arraysystem] "MUIVerb"="System File" "Icon"="explorer.exe" "SubCommands"="filesystemon;filesystemoff;foldersystemon;foldersystemoff" And adding the cascade to all the contexts by calling the arrays for the command rather than each command seperately: Code: ;Attributes 2 - Archive & System [HKEY_CLASSES_ROOT\*\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom" [HKEY_CLASSES_ROOT\Directory\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom" [HKEY_CLASSES_ROOT\Directory\Background\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom" [HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom"
Mr Jinje, just to let you know that the PowerShell script doesn't work. Unless you gave an update and I missed it
definitely not my intention to show off! Yeah in 10 Im gonna rework it a lot more with easier ways to get to stuff etc, took ages to figure it all out and theres a lot of redundent stuff in there currently. I tech for a fair amount of family and friends (as we all do!) and it helps with support so they are not clicking though 'places' they don't usually go and things are a click or two away. Heres a quick guide though to see how I got there: Spoiler App definitions: These are kept in Explorer\CommandStore and used to define a command, be it a app or otherwise. The 'name' you give it will be called from later either to put in a menu array for a cascade or just to call on a normal button. eg: CCleaner - 'named' it APPccleaner and added the command for which to run Code: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\APPccleaner] @="Open CCleaner..." "Icon"="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\APPccleaner\command] @="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" For this example I would have defined all four of Pirform tools and their respective commands : Code: APPccleaner APPdefraggler APPrecuva APPspeccy This doesn't do much on its own so we have to add it to a context menu: The RecycleBin is: HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\ So you add a new command, I called it piriform, the MUIVerb is what you want displayed, the Icon location and the SubCommands are where we call the previously defined apps Code: [HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\piriform] "MUIVerb"="Piriform Tools" "Icon"="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" "SubCommands"="APPccleaner;APPdefraggler;APPrecuva;APPspeccy" Once you have several apps or commands 'defined' you can then create a cascade from them: Code: ;Piriform Array [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\arraypiriform] "MUIVerb"="Piriform Tools" "icon"="control.exe" "SubCommands"="APPccleaner;APPdefraggler;APPrecuva;APPspeccy" Here I've created an 'array' with all four apps. I can easily add this cascade to the RecycleBin>Piriform menu by calling it just like a defined app Code: [HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\piriform] "MUIVerb"="Piriform Tools" "Icon"="C:\\Program Files\\Piriform\\CCleaner\\CCleaner64.exe" "SubCommands"="APPccleaner;arraypiriform" This will give you a menu called "Piriform Tools" inside it will have CCleaner and a flyout called "Piriform Tools" which includes of all four tools. If you are just having one menu then you dont need to define the arrays you can just call the name directly. Its when you want to create the extra flyout for the cascade you need the array. The biggest/longest part of it all was defining the apps and arrays! The main places you will be adding stuff too are: My Computer/This PC: [HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\] Desktop: [HKEY_CLASSES_ROOT\DesktopBackground\Shell\] RecycleBin [HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\shell\] Any and every file/folder: [HKEY_CLASSES_ROOT\*\shell\] Folders and background: [HKEY_CLASSES_ROOT\Directory\shell\] [HKEY_CLASSES_ROOT\Directory\Background\shell\] [HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\] Hope that makes some sort of sense? Heres one for the Attributes Advanced menu which is slightly more involved: Spoiler Code: Define the commands in command store: ;Archive ;Set Selected File(s) as Archive [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveon] @="Set Selected File(s) as Archive" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveon\command] @="attrib +a \"%1\"" ;Unset Archive for Selected File(s) [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveoff] @="Unset Archive for Selected File(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filearchiveoff\command] @="attrib -a \"%1\"" ;Set Files in Selected Folder(s) as Archive [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveon] @="Set Files in Selected Folder(s) as Archive" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveon\command] @="attrib +a \"%1\\*.*\" /S /D" ;Unset Files in Selected Folder(s) as Archive [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveoff] @="Unset Archive for Files in Selected Folder(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\folderarchiveoff\command] @="attrib -a \"%1\\*.*\" /S /D" ;System ;Set Selected File(s) as System [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemon] @="Set Selected File(s) as System" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemon\command] @="attrib +s \"%1\"" ;Unset System for Selected File(s) [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemoff] @="Unset System for Selected File(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\filesystemoff\command] @="attrib -s \"%1\"" ;Set Files in Selected Folder(s) as System [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemon] @="Set Files in Selected Folder(s) as System" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemon\command] @="attrib +s \"%1\\*.*\" /S /D" ;Unset Files in Selected Folder(s) as System [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemoff] @="Unset System for Files in Selected Folder(s)" [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\foldersystemoff\command] @="attrib -s \"%1\\*.*\" /S /D Defining the arrays: Code: ;Archive Array [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\arrayarchive] "MUIVerb"="Archive" "Icon"="explorer.exe" "SubCommands"="filearchiveon;filearchiveoff;folderarchiveon;folderarchiveoff" ;System Array [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\arraysystem] "MUIVerb"="System File" "Icon"="explorer.exe" "SubCommands"="filesystemon;filesystemoff;foldersystemon;foldersystemoff" And adding the cascade to all the contexts by calling the arrays for the command rather than each command seperately: Code: ;Attributes 2 - Archive & System [HKEY_CLASSES_ROOT\*\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom" [HKEY_CLASSES_ROOT\Directory\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom" [HKEY_CLASSES_ROOT\Directory\Background\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom" [HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\5attributes2] "MUIVerb"="Attributes Advanced" "SubCommands"="arrayarchive;arraysystem" "Icon"="explorer.exe" "Position"="Bottom"
Yeah, not sure if I didn't accidentally delete a needed bracket at some point. Or maybe that extra bracket at the bottom was missing a front bracket near the top. Either way, I'll have to get some time to look at it...