Pcgamer27

Member
Joined
Mar 1, 2025
Messages
65
i am looking for script for all shows desktop icons windows 11 versions

Control Panel, Desktop, Documents, Downloads, Gallery, Home, Music, Network, Pictures ,Recycle bin ,This PC ,User's Files

as well as other icons explorer, defrag, write cleanup, cmd, task manager
 

Solution
Certainly! Here’s a PowerShell script that creates desktop shortcuts for all the classic system icons, special folders, and Windows tools you listed—including those from your screenshot and your text:

PowerShell Script: Create ALL System/Folder/Desktop/Utility Shortcuts​

Code:
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

# Classic System Icons - These are opened via explorer shell commands
$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle...
Here's a universal script (batch + registry) to show all the classic desktop icons (Computer, User, Network, Control Panel, Recycle Bin) on Windows 11, and create shortcuts for Explorer, Defrag, Disk Cleanup, CMD, Task Manager, and other utilities. This works on any edition and version.

1. Show All System Desktop Icons via Registry

Save as AddSystemDesktopIcons.reg and double-click, or import via script:
Code:
Windows Registry Editor Version 5.00

; Show Computer (This PC)
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{20D04FE0-3AEA-1069-A2D8-08002B30309D}"=dword:0

; Show User's Files
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{59031a47-3f72-44a7-89c5-5595fe6b30ee}"=dword:0

; Show Network
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"=dword:0

; Show Control Panel
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"=dword:0

; Show Recycle Bin
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{645FF040-5081-101B-9F08-00AA002F954E}"=dword:0

; Show Documents (if available as special folder)
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{d3162b92-9365-467a-956b-92703aca08af}"=dword:0
To apply:
  • Save, double click, or import with:
    reg import AddSystemDesktopIcons.reg
  • Then restart explorer.exe for the icons to appear.

2. Batch Script to Create Additional Shortcuts on Desktop

Save as CreateDesktopShortcuts.cmd and run as user (not admin):
Code:
[USER=35331]@echo[/USER] off
set DESK=%USERPROFILE%\Desktop

:: File Explorer
echo Set oWS = WScript.CreateObject("WScript.Shell") :
oWS.CreateShortcut("%DESK%\File Explorer.lnk").TargetPath = "explorer.exe" > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Disk Cleanup
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Disk Cleanup.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\cleanmgr.exe" :
oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Disk Defragmenter
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Defragment and Optimize Drives.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\dfrgui.exe" : oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Command Prompt
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Command Prompt.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\cmd.exe" : oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Task Manager
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Task Manager.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\Taskmgr.exe" :
oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Notepad (Write, for text editing)
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Notepad.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\notepad.exe" :
oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Optionally add others, e.g. Gallery (Photos), Documents, Downloads
:: For folders, you can create standard shortcuts to:
mklink "%DESK%\Documents.lnk" "%USERPROFILE%\Documents"
mklink "%DESK%\Downloads.lnk" "%USERPROFILE%\Downloads"
mklink "%DESK%\Music.lnk" "%USERPROFILE%\Music"
mklink "%DESK%\Pictures.lnk" "%USERPROFILE%\Pictures"
mklink "%DESK%\Videos.lnk" "%USERPROFILE%\Videos"

exit

3. Special Items: Gallery, Home, etc.

  • Gallery: If you mean the new Windows 11 'Gallery' in File Explorer, there’s no direct desktop shortcut, but you can make a shortcut that runs:
    explorer.exe shell:MyPicturesLibrary
    (Or for Home: explorer.exe shell:Profile)
  • Control Panel: Already covered via registry above; for shortcut, run:
    explorer shell:ControlPanelFolder

How to Use

  1. Apply .reg to show all the system icon checkboxes.
  2. Run the batch file as your user to create the rest of the shortcuts.

What About for All Users / Automation?

  • Run the batch as the target user (not as SYSTEM/admin) for correct desktop.
  • For an answer file, use <FirstLogonCommands> or push scripts via a provisioning package.

If you want an all-in-one PowerShell version, let me know! This method is version-safe for all Windows 11 releases and does not require UWP tricks or unsupported hacks.
 

Here's a universal script (batch + registry) to show all the classic desktop icons (Computer, User, Network, Control Panel, Recycle Bin) on Windows 11, and create shortcuts for Explorer, Defrag, Disk Cleanup, CMD, Task Manager, and other utilities. This works on any edition and version.

1. Show All System Desktop Icons via Registry

Save as AddSystemDesktopIcons.reg and double-click, or import via script:
Code:
Windows Registry Editor Version 5.00

; Show Computer (This PC)
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{20D04FE0-3AEA-1069-A2D8-08002B30309D}"=dword:0

; Show User's Files
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{59031a47-3f72-44a7-89c5-5595fe6b30ee}"=dword:0

; Show Network
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"=dword:0

; Show Control Panel
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"=dword:0

; Show Recycle Bin
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{645FF040-5081-101B-9F08-00AA002F954E}"=dword:0

; Show Documents (if available as special folder)
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel]
"{d3162b92-9365-467a-956b-92703aca08af}"=dword:0
To apply:
  • Save, double click, or import with:
    reg import AddSystemDesktopIcons.reg
  • Then restart explorer.exe for the icons to appear.

2. Batch Script to Create Additional Shortcuts on Desktop

Save as CreateDesktopShortcuts.cmd and run as user (not admin):
Code:
[USER=35331]@echo[/USER] off
set DESK=%USERPROFILE%\Desktop

:: File Explorer
echo Set oWS = WScript.CreateObject("WScript.Shell") :
oWS.CreateShortcut("%DESK%\File Explorer.lnk").TargetPath = "explorer.exe" > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Disk Cleanup
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Disk Cleanup.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\cleanmgr.exe" :
oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Disk Defragmenter
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Defragment and Optimize Drives.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\dfrgui.exe" : oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Command Prompt
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Command Prompt.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\cmd.exe" : oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Task Manager
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Task Manager.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\Taskmgr.exe" :
oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Notepad (Write, for text editing)
echo Set oWS = WScript.CreateObject("WScript.Shell") :
Set oLink = oWS.CreateShortcut("%DESK%\Notepad.lnk") :
oLink.TargetPath = "%SystemRoot%\System32\notepad.exe" :
oLink.Save > "%TEMP%\~mk.lnk.vbs"
cscript //nologo "%TEMP%\~mk.lnk.vbs"
del "%TEMP%\~mk.lnk.vbs"

:: Optionally add others, e.g. Gallery (Photos), Documents, Downloads
:: For folders, you can create standard shortcuts to:
mklink "%DESK%\Documents.lnk" "%USERPROFILE%\Documents"
mklink "%DESK%\Downloads.lnk" "%USERPROFILE%\Downloads"
mklink "%DESK%\Music.lnk" "%USERPROFILE%\Music"
mklink "%DESK%\Pictures.lnk" "%USERPROFILE%\Pictures"
mklink "%DESK%\Videos.lnk" "%USERPROFILE%\Videos"

exit

3. Special Items: Gallery, Home, etc.

  • Gallery: If you mean the new Windows 11 'Gallery' in File Explorer, there’s no direct desktop shortcut, but you can make a shortcut that runs:
    explorer.exe shell:MyPicturesLibrary
    (Or for Home: explorer.exe shell:Profile)
  • Control Panel: Already covered via registry above; for shortcut, run:
    explorer shell:ControlPanelFolder

How to Use

  1. Apply .reg to show all the system icon checkboxes.
  2. Run the batch file as your user to create the rest of the shortcuts.

What About for All Users / Automation?

  • Run the batch as the target user (not as SYSTEM/admin) for correct desktop.
  • For an answer file, use <FirstLogonCommands> or push scripts via a provisioning package.

If you want an all-in-one PowerShell version, let me know! This method is version-safe for all Windows 11 releases and does not require UWP tricks or unsupported hacks.

Ok you can also do Create Additional Shortcuts on Desktop via registry key
 

You generally cannot create file or folder shortcuts on the desktop via the registry alone.
Here’s why:
  • The Windows registry controls many aspects of the OS, including shell icon visibility and system behavior, but it does not and cannot create .lnk shortcut files on the filesystem.
  • Desktop shortcuts are physical files in C:\Users\%USERNAME%\Desktop (user’s desktop) or C:\Users\Public\Desktop (all users). Only some built-in icons (This PC, Network, Control Panel, Recycle Bin, etc.) are controlled by registry keys (as in the previous .reg example).
  • There are no registry entries that let you create shortcuts to arbitrary executables or folders—shortcuts must be created as actual .lnk files.

Correct Ways to Create Desktop Shortcuts:

  1. Scripted (CMD, PowerShell, VBS):
    • This is how organizations and administrators automate shortcut placement.
    • Example: (PowerShell)
      Code:
      $WshShell = New-Object -ComObject WScript.Shell
      $Desktop = [Environment]::GetFolderPath('Desktop')
      $Shortcut = $WshShell.CreateShortcut("$Desktop\Notepad.lnk")
      $Shortcut.TargetPath = "notepad.exe"
      $Shortcut.Save()
    • Example: (batch + VBS hybrid, as previously provided)
  2. Manual:
    • Right-click > New > Shortcut, etc.

What the Registry Can Do:

  • Show/hide legacy icons only (Computer, Control Panel, Network, User Files, Recycle Bin).
  • Customize which built-in special icons are toggled via keys under:
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel

Summary Table

MethodShow Built-in System Icons?Creates Custom/Desktop Shortcuts?Works for All .lnk?
Registry key (.reg)YesNoNo
PowerShell/batch/VBS scriptNoYesYes

If you want to mass deploy custom shortcuts, use a PowerShell or batch script (as I posted earlier). For system icons, use a .reg file. There is no registry method for creating .lnk files or custom desktop shortcuts for arbitrary programs or locations.
If you want an all-in-one PowerShell script to deploy all your requested shortcuts, I can provide or customize one for you! Just say the word!
 

You generally cannot create file or folder shortcuts on the desktop via the registry alone.
Here’s why:
  • The Windows registry controls many aspects of the OS, including shell icon visibility and system behavior, but it does not and cannot create .lnk shortcut files on the filesystem.
  • Desktop shortcuts are physical files in C:\Users\%USERNAME%\Desktop (user’s desktop) or C:\Users\Public\Desktop (all users). Only some built-in icons (This PC, Network, Control Panel, Recycle Bin, etc.) are controlled by registry keys (as in the previous .reg example).
  • There are no registry entries that let you create shortcuts to arbitrary executables or folders—shortcuts must be created as actual .lnk files.

Correct Ways to Create Desktop Shortcuts:

  1. Scripted (CMD, PowerShell, VBS):
    • This is how organizations and administrators automate shortcut placement.
    • Example: (PowerShell)
      Code:
      $WshShell = New-Object -ComObject WScript.Shell
      $Desktop = [Environment]::GetFolderPath('Desktop')
      $Shortcut = $WshShell.CreateShortcut("$Desktop\Notepad.lnk")
      $Shortcut.TargetPath = "notepad.exe"
      $Shortcut.Save()
    • Example: (batch + VBS hybrid, as previously provided)
  2. Manual:
    • Right-click > New > Shortcut, etc.

What the Registry Can Do:

  • Show/hide legacy icons only (Computer, Control Panel, Network, User Files, Recycle Bin).
  • Customize which built-in special icons are toggled via keys under:
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel

Summary Table

MethodShow Built-in System Icons?Creates Custom/Desktop Shortcuts?Works for All .lnk?
Registry key (.reg)YesNoNo
PowerShell/batch/VBS scriptNoYesYes

If you want to mass deploy custom shortcuts, use a PowerShell or batch script (as I posted earlier). For system icons, use a .reg file. There is no registry method for creating .lnk files or custom desktop shortcuts for arbitrary programs or locations.
If you want an all-in-one PowerShell script to deploy all your requested shortcuts, I can provide or customize one for you! Just say the word!
i want these system icons on my desktop there is a script for that

Control Panel Desktop Documents Downloads Gallery Home Music Network Pictures Recycle bin This PC User's Files Videos
 

Absolutely! For system icons like This PC, User’s Files, Control Panel, Network, and Recycle Bin, you can always display them on the desktop using registry tweaks. For other “special folders” (Documents, Downloads, Pictures, Music, Videos, Home), the preferred method is to create shortcuts (.lnk files) directly on the desktop—they cannot be shown by registry alone except as regular folder shortcuts.
Below is an all-in-one PowerShell script that:
  • Sets all available classic system icons to display via registry.
  • Creates shortcuts for all the user-special folders (Documents, Downloads, Pictures, etc.) and opens them from the desktop.
  • Creates a Control Panel and File Explorer shortcut if desired.
  • Works universally for all Windows 11 versions and editions.

⚡ PowerShell Script: Show System Icons & Special Folder Shortcuts​

Code:
# --- Show all classic system icons (registry, user context) ---
$desktopRegBase = 'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel'

$icons = @{
    "ThisPC"        = "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"    # This PC
    "UserFiles"     = "{59031a47-3f72-44a7-89c5-5595fe6b30ee}"    # User's Files
    "Network"       = "{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"    # Network
    "RecycleBin"    = "{645FF040-5081-101B-9F08-00AA002F954E}"    # Recycle Bin
    "ControlPanel"  = "{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"    # Control Panel
}

foreach ($name in $icons.Keys) {
    Set-ItemProperty -Path $desktopRegBase -Name $icons[$name] -Value 0 -ErrorAction SilentlyContinue
}

# --- Create shortcuts for special folders and utilities ---
$WshShell = New-Object -ComObject WScript.Shell
$Desktop = [Environment]::GetFolderPath('Desktop')

# Shortcuts to known folders
$knownFolders = @{
    "Documents" = [Environment]::GetFolderPath('MyDocuments')
    "Downloads" = [Environment]::GetFolderPath('Downloads')
    "Pictures"  = [Environment]::GetFolderPath('MyPictures')
    "Music"     = [Environment]::GetFolderPath('MyMusic')
    "Videos"    = [Environment]::GetFolderPath('MyVideos')
    "Home"      = "$env:USERPROFILE"
    "Gallery"   = [Environment]::GetFolderPath('MyPictures')  # Gallery = Pictures for now
}
foreach ($name in $knownFolders.Keys) {
    $target = $knownFolders[$name]
    $shortcut = $WshShell.CreateShortcut("$Desktop\$name.lnk")
    $shortcut.TargetPath = $target
    $shortcut.Save()
}

# File Explorer shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\File Explorer.lnk")
$shortcut.TargetPath = "explorer.exe"
$shortcut.Save()

# Control Panel shortcut (explicit)
$shortcut = $WshShell.CreateShortcut("$Desktop\Control Panel.lnk")
$shortcut.TargetPath = "explorer.exe"
$shortcut.Arguments  = "shell:ControlPanelFolder"
$shortcut.Save()

# (Optional) Defragment and Optimize Drives
$shortcut = $WshShell.CreateShortcut("$Desktop\Defragment and Optimize Drives.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\dfrgui.exe"
$shortcut.Save()

# (Optional) Disk Cleanup
$shortcut = $WshShell.CreateShortcut("$Desktop\Disk Cleanup.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\cleanmgr.exe"
$shortcut.Save()

What This Does:

  • Shows:
    • This PC, User's Files, Control Panel, Recycle Bin, Network on the desktop via registry.
  • Creates shortcuts for:
    • Documents, Downloads, Pictures, Music, Videos, Home, Gallery, File Explorer, Control Panel, Defrag/Optimize, Disk Cleanup.

How To Use

  • Save as ShowAllDesktopIcons.ps1
  • Run as the user whose desktop is to be changed:
    powershell.exe -NoProfile -ExecutionPolicy Bypass -File ShowAllDesktopIcons.ps1
  • Or invoke from <FirstLogonCommands> in your unattend deployment.

Notes

  • Some icons (e.g., Documents, Downloads) cannot be toggled as "special" system desktop icons by registry; they always require a shortcut.
  • Gallery is mapped to Pictures unless you need a custom target.
  • All changes are for the currently logged-in user.

If you want an all-registry (.reg) version for only icons that support it, or want other customizations, just ask!
 

Absolutely! For system icons like This PC, User’s Files, Control Panel, Network, and Recycle Bin, you can always display them on the desktop using registry tweaks. For other “special folders” (Documents, Downloads, Pictures, Music, Videos, Home), the preferred method is to create shortcuts (.lnk files) directly on the desktop—they cannot be shown by registry alone except as regular folder shortcuts.
Below is an all-in-one PowerShell script that:
  • Sets all available classic system icons to display via registry.
  • Creates shortcuts for all the user-special folders (Documents, Downloads, Pictures, etc.) and opens them from the desktop.
  • Creates a Control Panel and File Explorer shortcut if desired.
  • Works universally for all Windows 11 versions and editions.

⚡ PowerShell Script: Show System Icons & Special Folder Shortcuts​

Code:
# --- Show all classic system icons (registry, user context) ---
$desktopRegBase = 'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel'

$icons = @{
    "ThisPC"        = "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"    # This PC
    "UserFiles"     = "{59031a47-3f72-44a7-89c5-5595fe6b30ee}"    # User's Files
    "Network"       = "{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"    # Network
    "RecycleBin"    = "{645FF040-5081-101B-9F08-00AA002F954E}"    # Recycle Bin
    "ControlPanel"  = "{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"    # Control Panel
}

foreach ($name in $icons.Keys) {
    Set-ItemProperty -Path $desktopRegBase -Name $icons[$name] -Value 0 -ErrorAction SilentlyContinue
}

# --- Create shortcuts for special folders and utilities ---
$WshShell = New-Object -ComObject WScript.Shell
$Desktop = [Environment]::GetFolderPath('Desktop')

# Shortcuts to known folders
$knownFolders = @{
    "Documents" = [Environment]::GetFolderPath('MyDocuments')
    "Downloads" = [Environment]::GetFolderPath('Downloads')
    "Pictures"  = [Environment]::GetFolderPath('MyPictures')
    "Music"     = [Environment]::GetFolderPath('MyMusic')
    "Videos"    = [Environment]::GetFolderPath('MyVideos')
    "Home"      = "$env:USERPROFILE"
    "Gallery"   = [Environment]::GetFolderPath('MyPictures')  # Gallery = Pictures for now
}
foreach ($name in $knownFolders.Keys) {
    $target = $knownFolders[$name]
    $shortcut = $WshShell.CreateShortcut("$Desktop\$name.lnk")
    $shortcut.TargetPath = $target
    $shortcut.Save()
}

# File Explorer shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\File Explorer.lnk")
$shortcut.TargetPath = "explorer.exe"
$shortcut.Save()

# Control Panel shortcut (explicit)
$shortcut = $WshShell.CreateShortcut("$Desktop\Control Panel.lnk")
$shortcut.TargetPath = "explorer.exe"
$shortcut.Arguments  = "shell:ControlPanelFolder"
$shortcut.Save()

# (Optional) Defragment and Optimize Drives
$shortcut = $WshShell.CreateShortcut("$Desktop\Defragment and Optimize Drives.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\dfrgui.exe"
$shortcut.Save()

# (Optional) Disk Cleanup
$shortcut = $WshShell.CreateShortcut("$Desktop\Disk Cleanup.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\cleanmgr.exe"
$shortcut.Save()

What This Does:

  • Shows:
    • This PC, User's Files, Control Panel, Recycle Bin, Network on the desktop via registry.
  • Creates shortcuts for:
    • Documents, Downloads, Pictures, Music, Videos, Home, Gallery, File Explorer, Control Panel, Defrag/Optimize, Disk Cleanup.

How To Use

  • Save as ShowAllDesktopIcons.ps1
  • Run as the user whose desktop is to be changed:
    powershell.exe -NoProfile -ExecutionPolicy Bypass -File ShowAllDesktopIcons.ps1
  • Or invoke from <FirstLogonCommands> in your unattend deployment.

Notes

  • Some icons (e.g., Documents, Downloads) cannot be toggled as "special" system desktop icons by registry; they always require a shortcut.
  • Gallery is mapped to Pictures unless you need a custom target.
  • All changes are for the currently logged-in user.

If you want an all-registry (.reg) version for only icons that support it, or want other customizations, just ask!
also these apps Control Panel, Desktop, Documents, Downloads, Gallery, Home, Music, Network, Pictures ,Recycle bin ,This PC ,User's Files

as well as other icons explorer, defrag, write cleanup, cmd, task manager
 

Certainly! Below is a complete PowerShell script that will:
  • Show all classic system icons on the desktop (This PC, User’s Files, Control Panel, Network, Recycle Bin).
  • Create shortcuts for common user folders like Documents, Downloads, Pictures, Music, Videos, Home, Gallery.
  • Create shortcuts on the desktop for utilities like File Explorer, Disk Defragmenter, Disk Cleanup, Command Prompt, Task Manager, and Notepad.
This script works universally across Windows 11 versions and editions:
Code:
# Show all classic system desktop icons by setting registry keys
$desktopRegBase = 'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel'

$icons = @{
    "ThisPC"        = "{20D04FE0-3AEA-1069-A2D8-08002B30309D}"    # This PC
    "UserFiles"     = "{59031a47-3f72-44a7-89c5-5595fe6b30ee}"    # User's Files
    "Network"       = "{F02C1A0D-BE21-4350-88B0-7367FC96EF3C}"    # Network
    "RecycleBin"    = "{645FF040-5081-101B-9F08-00AA002F954E}"    # Recycle Bin
    "ControlPanel"  = "{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}"    # Control Panel
}

foreach ($name in $icons.Keys) {
    Set-ItemProperty -Path $desktopRegBase -Name $icons[$name] -Value 0 -ErrorAction SilentlyContinue
}

# Create shortcuts on Desktop for special folders and utilities
$WshShell = New-Object -ComObject WScript.Shell
$Desktop = [Environment]::GetFolderPath('Desktop')

# Special folders to link as shortcuts
$knownFolders = @{
    "Documents" = [Environment]::GetFolderPath('MyDocuments')
    "Downloads" = [Environment]::GetFolderPath('Downloads')
    "Pictures"  = [Environment]::GetFolderPath('MyPictures')
    "Music"     = [Environment]::GetFolderPath('MyMusic')
    "Videos"    = [Environment]::GetFolderPath('MyVideos')
    "Home"      = "$env:USERPROFILE"
    "Gallery"   = [Environment]::GetFolderPath('MyPictures')  # Gallery = Pictures folder for shortcut
}

foreach ($name in $knownFolders.Keys) {
    $target = $knownFolders[$name]
    $shortcut = $WshShell.CreateShortcut("$Desktop\$name.lnk")
    $shortcut.TargetPath = $target
    $shortcut.Save()
}

# File Explorer shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\File Explorer.lnk")
$shortcut.TargetPath = "explorer.exe"
$shortcut.Save()

# Control Panel shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\Control Panel.lnk")
$shortcut.TargetPath = "explorer.exe"
$shortcut.Arguments  = "shell:ControlPanelFolder"
$shortcut.Save()

# Defragment and Optimize Drives shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\Defragment and Optimize Drives.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\dfrgui.exe"
$shortcut.Save()

# Disk Cleanup shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\Disk Cleanup.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\cleanmgr.exe"
$shortcut.Save()

# Command Prompt shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\Command Prompt.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\cmd.exe"
$shortcut.Save()

# Task Manager shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\Task Manager.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\Taskmgr.exe"
$shortcut.Save()

# Notepad shortcut
$shortcut = $WshShell.CreateShortcut("$Desktop\Notepad.lnk")
$shortcut.TargetPath = "$env:SystemRoot\System32\notepad.exe"
$shortcut.Save()

How to Use​

  • Save as ShowDesktopIconsAndShortcuts.ps1.
  • Run under current user context (e.g., manually, or from <FirstLogonCommands> in your autounattend.xml).
  • This script updates registry and physically creates .lnk files on desktop, so both system icons and common folders/utilities appear.

If you want a registry-only version to just show system icons, or a batch file solution that does shortcuts with VBS, or help integrating this in unattended setup, just say so!
This is version-safe and covers all your requested icons and shortcuts for Windows 11.
 

and for all apps in the photo

Screenshot 2025-06-25 at 08.59.34.webp
 

Great—your screenshot shows the classic “Administrative Tools” and “System Utilities” apps from Windows’ Control Panel/Windows Tools folder.
You can create desktop shortcuts for all of these utilities with a script!
Below is a PowerShell script to create shortcuts for the most common system/admin tools shown in your screenshot, directly on the current user’s desktop. This includes:
  • Computer Management
  • Component Services
  • Device Manager
  • Event Viewer (Logboeken)
  • Command Prompt
  • Windows PowerShell (x86 and standard)
  • Windows Defender Firewall
  • Performance Monitor (Prestatiemeter)
  • iSCSI Initiator
  • ODBC Data Sources (32/64-bit)
  • Services
  • Disk Defragmenter
  • Task Scheduler
  • System Configuration
  • Resource Monitor (Broncontrole)
  • Control Panel
  • Registry Editor
  • Power Automate
  • System Information
  • Steps Recorder (Stappenbeschrijving)
  • Windows Media Player
  • Windows Tools/Windows Accessories/UAC etc.

PowerShell Script: Create Shortcuts for Windows Utilities​

Code:
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

$links = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Control Panel";            path="$env:SystemRoot\explorer.exe"; args="shell:ControlPanelFolder"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="Power Automate";           path="$env:ProgramFiles\WindowsApps\Microsoft.PowerAutomateDesktop_*\PAD.Console.Host.exe"}, # may need custom handling
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"}
)

foreach ($l in $links) {
    $shortcut = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $shortcut.TargetPath = $l.path
    if ($l.args) { $shortcut.Arguments = $l.args }
    $shortcut.Save()
}

# --- Optionally add UAC, Snipping Tool, Notepad, Calculator ---
# Uncomment below if you want
#$extra = @(
#    @{name="Snipping Tool"; path="$env:SystemRoot\System32\SnippingTool.exe"},
#    @{name="Notepad"; path="$env:SystemRoot\System32\notepad.exe"},
#    @{name="Calculator"; path="$env:SystemRoot\System32\calc.exe"}
#)
#foreach ($l in $extra) {
#    $shortcut = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
#    $shortcut.TargetPath = $l.path
#    $shortcut.Save()
#}

How to Use

  • Save the script as CreateAllAppsShortcuts.ps1
  • Run as the normal user (not as SYSTEM), or use <FirstLogonCommands> in your deployment.
  • All listed utilities will have shortcuts on the user's desktop.

If you’d like additional apps included or want icons customized, let me know!
This list matches almost all icons in your screenshot.
 

Great—your screenshot shows the classic “Administrative Tools” and “System Utilities” apps from Windows’ Control Panel/Windows Tools folder.
You can create desktop shortcuts for all of these utilities with a script!
Below is a PowerShell script to create shortcuts for the most common system/admin tools shown in your screenshot, directly on the current user’s desktop. This includes:
  • Computer Management
  • Component Services
  • Device Manager
  • Event Viewer (Logboeken)
  • Command Prompt
  • Windows PowerShell (x86 and standard)
  • Windows Defender Firewall
  • Performance Monitor (Prestatiemeter)
  • iSCSI Initiator
  • ODBC Data Sources (32/64-bit)
  • Services
  • Disk Defragmenter
  • Task Scheduler
  • System Configuration
  • Resource Monitor (Broncontrole)
  • Control Panel
  • Registry Editor
  • Power Automate
  • System Information
  • Steps Recorder (Stappenbeschrijving)
  • Windows Media Player
  • Windows Tools/Windows Accessories/UAC etc.

PowerShell Script: Create Shortcuts for Windows Utilities​

Code:
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

$links = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Control Panel";            path="$env:SystemRoot\explorer.exe"; args="shell:ControlPanelFolder"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="Power Automate";           path="$env:ProgramFiles\WindowsApps\Microsoft.PowerAutomateDesktop_*\PAD.Console.Host.exe"}, # may need custom handling
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"}
)

foreach ($l in $links) {
    $shortcut = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $shortcut.TargetPath = $l.path
    if ($l.args) { $shortcut.Arguments = $l.args }
    $shortcut.Save()
}

# --- Optionally add UAC, Snipping Tool, Notepad, Calculator ---
# Uncomment below if you want
#$extra = @(
#    @{name="Snipping Tool"; path="$env:SystemRoot\System32\SnippingTool.exe"},
#    @{name="Notepad"; path="$env:SystemRoot\System32\notepad.exe"},
#    @{name="Calculator"; path="$env:SystemRoot\System32\calc.exe"}
#)
#foreach ($l in $extra) {
#    $shortcut = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
#    $shortcut.TargetPath = $l.path
#    $shortcut.Save()
#}

How to Use

  • Save the script as CreateAllAppsShortcuts.ps1
  • Run as the normal user (not as SYSTEM), or use <FirstLogonCommands> in your deployment.
  • All listed utilities will have shortcuts on the user's desktop.

If you’d like additional apps included or want icons customized, let me know!
This list matches almost all icons in your screenshot.
also these apps Control Panel, Desktop, Documents, Downloads, Gallery, Home, Music, Network, Pictures ,Recycle bin ,This PC ,User's Files explorer
 

Certainly! Here’s a PowerShell script that creates desktop shortcuts for all the classic system icons, special folders, and Windows tools you listed—including those from your screenshot and your text:

PowerShell Script: Create ALL System/Folder/Desktop/Utility Shortcuts​

Code:
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

# Classic System Icons - These are opened via explorer shell commands
$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle Bin";    args="shell:RecycleBinFolder"},
    @{name="Desktop";        args="shell:Desktop"},
    @{name="Documents";      args="shell:Personal"},
    @{name="Downloads";      args="shell:Downloads"},
    @{name="Music";          args="shell:MyMusic"},
    @{name="Pictures";       args="shell:MyPictures"},
    @{name="Videos";         args="shell:MyVideo"},
    @{name="Home";           args="shell:Profile"},
    @{name="Gallery";        args="shell:MyPictures"} # Windows 11 gallery uses Pictures as base
)

foreach ($icon in $systemIcons) {
    $s = $wshell.CreateShortcut("$desktop\$($icon.name).lnk")
    $s.TargetPath = "$env:SystemRoot\explorer.exe"
    $s.Arguments = $icon.args
    $s.Save()
}

# Explorer shortcut
$s = $wshell.CreateShortcut("$desktop\File Explorer.lnk")
$s.TargetPath = "$env:SystemRoot\explorer.exe"
$s.Save()

# Windows tools/utilities (matches screenshot and extended list)
$tools = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Disk Cleanup";             path="$env:SystemRoot\System32\cleanmgr.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"},
    @{name="Notepad";                  path="$env:SystemRoot\System32\notepad.exe"}
)

foreach ($l in $tools) {
    $sc = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $sc.TargetPath = $l.path
    $sc.Save()
}

This script will:
  • Create shortcuts for ALL standard Windows system locations (shell folders) on the desktop.
  • Add desktop shortcuts for literally every control panel/admin/system tool seen in your screenshot and classic Windows Tool folders.
  • Work for any user session on Windows 11 (any version/edition).

How to use:
  • Save as CreateAllDesktopShortcuts.ps1
  • Open PowerShell as the desktop user, run:
    powershell.exe -ExecutionPolicy Bypass -File CreateAllDesktopShortcuts.ps1
  • Or invoke from <FirstLogonCommands> in deployment.

If you want the full descriptions for each icon, icon customization, or mapping for other languages, let me know! This list is complete for all items you referenced (both text and screenshot).
 

Solution
Certainly! Here’s a PowerShell script that creates desktop shortcuts for all the classic system icons, special folders, and Windows tools you listed—including those from your screenshot and your text:

PowerShell Script: Create ALL System/Folder/Desktop/Utility Shortcuts​

Code:
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

# Classic System Icons - These are opened via explorer shell commands
$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle Bin";    args="shell:RecycleBinFolder"},
    @{name="Desktop";        args="shell:Desktop"},
    @{name="Documents";      args="shell:Personal"},
    @{name="Downloads";      args="shell:Downloads"},
    @{name="Music";          args="shell:MyMusic"},
    @{name="Pictures";       args="shell:MyPictures"},
    @{name="Videos";         args="shell:MyVideo"},
    @{name="Home";           args="shell:Profile"},
    @{name="Gallery";        args="shell:MyPictures"} # Windows 11 gallery uses Pictures as base
)

foreach ($icon in $systemIcons) {
    $s = $wshell.CreateShortcut("$desktop\$($icon.name).lnk")
    $s.TargetPath = "$env:SystemRoot\explorer.exe"
    $s.Arguments = $icon.args
    $s.Save()
}

# Explorer shortcut
$s = $wshell.CreateShortcut("$desktop\File Explorer.lnk")
$s.TargetPath = "$env:SystemRoot\explorer.exe"
$s.Save()

# Windows tools/utilities (matches screenshot and extended list)
$tools = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Disk Cleanup";             path="$env:SystemRoot\System32\cleanmgr.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"},
    @{name="Notepad";                  path="$env:SystemRoot\System32\notepad.exe"}
)

foreach ($l in $tools) {
    $sc = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $sc.TargetPath = $l.path
    $sc.Save()
}



How to use:
  • Save as CreateAllDesktopShortcuts.ps1
  • Open PowerShell as the desktop user, run:
    powershell.exe -ExecutionPolicy Bypass -File CreateAllDesktopShortcuts.ps1
  • Or invoke from <FirstLogonCommands> in deployment.

If you want the full descriptions for each icon, icon customization, or mapping for other languages, let me know! This list is complete for all items you referenced (both text and screenshot).

I also have this together with Always show all tray icons
 

Absolutely! You can combine both scripts—the "Always show all tray icons" tweak and the script to create all classic/system/utility desktop shortcuts—into a single PowerShell script or batch for your deployment.

1. Always Show All Tray Icons (legacy, works for 21H2 and some 22H2)

Code:
# This ONLY works for Windows 10/11 21H2 and some 22H2. Later builds require user action.
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer" -Name EnableAutoTray -Value 0
Stop-Process -Name explorer -Force
Start-Process explorer
(If you combine this in <FirstLogonCommands>, insert a short delay before and after to help with reliability)

2. All Desktop Shortcuts Script (as previously provided and in your last post)

Code:
# --- System and Special Folder Shortcuts ---
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle Bin";    args="shell:RecycleBinFolder"},
    @{name="Desktop";        args="shell:Desktop"},
    @{name="Documents";      args="shell:Personal"},
    @{name="Downloads";      args="shell:Downloads"},
    @{name="Music";          args="shell:MyMusic"},
    @{name="Pictures";       args="shell:MyPictures"},
    @{name="Videos";         args="shell:MyVideo"},
    @{name="Home";           args="shell:Profile"},
    @{name="Gallery";        args="shell:MyPictures"}
)
foreach ($icon in $systemIcons) {
    $s = $wshell.CreateShortcut("$desktop\$($icon.name).lnk")
    $s.TargetPath = "$env:SystemRoot\explorer.exe"
    $s.Arguments = $icon.args
    $s.Save()
}
$s = $wshell.CreateShortcut("$desktop\File Explorer.lnk")
$s.TargetPath = "$env:SystemRoot\explorer.exe"
$s.Save()

# --- Utility Shortcuts (as previously provided) ---
$tools = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Disk Cleanup";             path="$env:SystemRoot\System32\cleanmgr.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"},
    @{name="Notepad";                  path="$env:SystemRoot\System32\notepad.exe"}
)
foreach ($l in $tools) {
    $sc = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $sc.TargetPath = $l.path
    $sc.Save()
}

Putting It All Together

You can combine both sections into one script and place it in your $OEM$\$1\SetupFiles folder, then reference it in <FirstLogonCommands>:
Code:
<FirstLogonCommands>
  <SynchronousCommand wcm:action="add">
    <Order>1</Order>
    <Description>Show Tray Icons and Desktop Shortcuts</Description>
    <CommandLine>powershell.exe -ExecutionPolicy Bypass -File C:\SetupFiles\CombinedDesktopSetup.ps1</CommandLine>
  </SynchronousCommand>
</FirstLogonCommands>
NOTE: The "Always show all tray icons" registry method only works for Windows 10/11 21H2 and is ignored on 22H2 and newer, as explained previously.

Let me know if you need it as a batch file, if you want extra items, or language-specific (Dutch/etc.) labels! This approach is as universal as Windows currently allows.
 

Absolutely! You can combine both scripts—the "Always show all tray icons" tweak and the script to create all classic/system/utility desktop shortcuts—into a single PowerShell script or batch for your deployment.

1. Always Show All Tray Icons (legacy, works for 21H2 and some 22H2)

Code:
# This ONLY works for Windows 10/11 21H2 and some 22H2. Later builds require user action.
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer" -Name EnableAutoTray -Value 0
Stop-Process -Name explorer -Force
Start-Process explorer
(If you combine this in <FirstLogonCommands>, insert a short delay before and after to help with reliability)

2. All Desktop Shortcuts Script (as previously provided and in your last post)

Code:
# --- System and Special Folder Shortcuts ---
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle Bin";    args="shell:RecycleBinFolder"},
    @{name="Desktop";        args="shell:Desktop"},
    @{name="Documents";      args="shell:Personal"},
    @{name="Downloads";      args="shell:Downloads"},
    @{name="Music";          args="shell:MyMusic"},
    @{name="Pictures";       args="shell:MyPictures"},
    @{name="Videos";         args="shell:MyVideo"},
    @{name="Home";           args="shell:Profile"},
    @{name="Gallery";        args="shell:MyPictures"}
)
foreach ($icon in $systemIcons) {
    $s = $wshell.CreateShortcut("$desktop\$($icon.name).lnk")
    $s.TargetPath = "$env:SystemRoot\explorer.exe"
    $s.Arguments = $icon.args
    $s.Save()
}
$s = $wshell.CreateShortcut("$desktop\File Explorer.lnk")
$s.TargetPath = "$env:SystemRoot\explorer.exe"
$s.Save()

# --- Utility Shortcuts (as previously provided) ---
$tools = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Disk Cleanup";             path="$env:SystemRoot\System32\cleanmgr.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"},
    @{name="Notepad";                  path="$env:SystemRoot\System32\notepad.exe"}
)
foreach ($l in $tools) {
    $sc = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $sc.TargetPath = $l.path
    $sc.Save()
}

Putting It All Together

You can combine both sections into one script and place it in your $OEM$\$1\SetupFiles folder, then reference it in <FirstLogonCommands>:
Code:
<FirstLogonCommands>
  <SynchronousCommand wcm:action="add">
    <Order>1</Order>
    <Description>Show Tray Icons and Desktop Shortcuts</Description>
    <CommandLine>powershell.exe -ExecutionPolicy Bypass -File C:\SetupFiles\CombinedDesktopSetup.ps1</CommandLine>
  </SynchronousCommand>
</FirstLogonCommands>
NOTE: The "Always show all tray icons" registry method only works for Windows 10/11 21H2 and is ignored on 22H2 and newer, as explained previously.

Let me know if you need it as a batch file, if you want extra items, or language-specific (Dutch/etc.) labels! This approach is as universal as Windows currently allows.
all version windows 11
 

Here’s the best-practice summary for a single universal script to:
  • Show all possible tray icons (where supported)
  • Create desktop shortcuts for all requested Windows tools, folders, and utilities
  • Support all versions of Windows 11 (with caveats explained below)

🔹 PowerShell Script for All Windows 11 Versions​

Code:
# --- 1. "Always Show All Tray Icons" (works on 21H2/early 22H2; ignored on newer, but safe) ---
try {
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer" -Name EnableAutoTray -Value 0
    Stop-Process -Name explorer -Force
    Start-Sleep -Seconds 3
    Start-Process explorer
} catch {
    Write-Host "Tray icon tweak not supported on this build, continuing..."
}

# --- 2. Create System/Folder Shortcuts on Desktop ---
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

# Classic system icons and user folders via shell argument shortcuts
$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle Bin";    args="shell:RecycleBinFolder"},
    @{name="Desktop";        args="shell:Desktop"},
    @{name="Documents";      args="shell:Personal"},
    @{name="Downloads";      args="shell:Downloads"},
    @{name="Music";          args="shell:MyMusic"},
    @{name="Pictures";       args="shell:MyPictures"},
    @{name="Videos";         args="shell:MyVideo"},
    @{name="Home";           args="shell:Profile"},
    @{name="Gallery";        args="shell:MyPictures"}
)
foreach ($icon in $systemIcons) {
    $s = $wshell.CreateShortcut("$desktop\$($icon.name).lnk")
    $s.TargetPath = "$env:SystemRoot\explorer.exe"
    $s.Arguments = $icon.args
    $s.Save()
}
# File Explorer shortcut
$s = $wshell.CreateShortcut("$desktop\File Explorer.lnk")
$s.TargetPath = "$env:SystemRoot\explorer.exe"
$s.Save()

# --- 3. Admin utilities/tools shortcuts (as in Windows Tools) ---
$tools = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Disk Cleanup";             path="$env:SystemRoot\System32\cleanmgr.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"},
    @{name="Notepad";                  path="$env:SystemRoot\System32\notepad.exe"}
)
foreach ($l in $tools) {
    $sc = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $sc.TargetPath = $l.path
    $sc.Save()
}

Write-Host "All requested shortcuts and (if supported) tray icon setting applied."

Instructions and Notes

  • Save as CombinedDesktopSetup.ps1
  • Run as a standard user (or in <FirstLogonCommands> in your autounattend.xml).
  • The tray icon section works on Windows 10/11 21H2, and is ignored (with a safe message) on newer builds—this is the maximum automation Microsoft currently allows for all versions.
  • Shortcuts are placed in the current user’s desktop and cover ALL the items you listed (plus those in the screenshot).
  • Script is safe to run repeatedly (will overwrite/update shortcuts).

Let me know if you want advanced tweaks, additional custom tools, or a Dutch translation of shortcut names!
 

Here’s the best-practice summary for a single universal script to:
  • Show all possible tray icons (where supported)
  • Create desktop shortcuts for all requested Windows tools, folders, and utilities
  • Support all versions of Windows 11 (with caveats explained below)

🔹 PowerShell Script for All Windows 11 Versions​

Code:
# --- 1. "Always Show All Tray Icons" (works on 21H2/early 22H2; ignored on newer, but safe) ---
try {
    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer" -Name EnableAutoTray -Value 0
    Stop-Process -Name explorer -Force
    Start-Sleep -Seconds 3
    Start-Process explorer
} catch {
    Write-Host "Tray icon tweak not supported on this build, continuing..."
}

# --- 2. Create System/Folder Shortcuts on Desktop ---
$wshell = New-Object -ComObject WScript.Shell
$desktop = [Environment]::GetFolderPath('Desktop')

# Classic system icons and user folders via shell argument shortcuts
$systemIcons = @(
    @{name="This PC";        args="shell:MyComputerFolder"},
    @{name="User's Files";   args="shell:UsersFilesFolder"},
    @{name="Network";        args="shell:NetworkPlacesFolder"},
    @{name="Control Panel";  args="shell:ControlPanelFolder"},
    @{name="Recycle Bin";    args="shell:RecycleBinFolder"},
    @{name="Desktop";        args="shell:Desktop"},
    @{name="Documents";      args="shell:Personal"},
    @{name="Downloads";      args="shell:Downloads"},
    @{name="Music";          args="shell:MyMusic"},
    @{name="Pictures";       args="shell:MyPictures"},
    @{name="Videos";         args="shell:MyVideo"},
    @{name="Home";           args="shell:Profile"},
    @{name="Gallery";        args="shell:MyPictures"}
)
foreach ($icon in $systemIcons) {
    $s = $wshell.CreateShortcut("$desktop\$($icon.name).lnk")
    $s.TargetPath = "$env:SystemRoot\explorer.exe"
    $s.Arguments = $icon.args
    $s.Save()
}
# File Explorer shortcut
$s = $wshell.CreateShortcut("$desktop\File Explorer.lnk")
$s.TargetPath = "$env:SystemRoot\explorer.exe"
$s.Save()

# --- 3. Admin utilities/tools shortcuts (as in Windows Tools) ---
$tools = @(
    @{name="Computer Management";      path="$env:SystemRoot\System32\CompMgmtLauncher.exe"},
    @{name="Component Services";       path="$env:SystemRoot\System32\comexp.msc"},
    @{name="Device Manager";           path="$env:SystemRoot\System32\devmgmt.msc"},
    @{name="Event Viewer";             path="$env:SystemRoot\System32\eventvwr.msc"},
    @{name="Command Prompt";           path="$env:SystemRoot\System32\cmd.exe"},
    @{name="Windows PowerShell";       path="$env:SystemRoot\System32\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows PowerShell (x86)"; path="$env:SystemRoot\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"},
    @{name="Windows Defender Firewall";path="$env:SystemRoot\System32\wf.msc"},
    @{name="Performance Monitor";      path="$env:SystemRoot\System32\perfmon.exe"},
    @{name="iSCSI Initiator";          path="$env:SystemRoot\System32\iscsicpl.exe"},
    @{name="ODBC Data Sources (32-bit)";path="$env:SystemRoot\SysWOW64\odbcad32.exe"},
    @{name="ODBC Data Sources (64-bit)";path="$env:SystemRoot\System32\odbcad32.exe"},
    @{name="Services";                 path="$env:SystemRoot\System32\services.msc"},
    @{name="Disk Defragmenter";        path="$env:SystemRoot\System32\dfrgui.exe"},
    @{name="Disk Cleanup";             path="$env:SystemRoot\System32\cleanmgr.exe"},
    @{name="Task Scheduler";           path="$env:SystemRoot\System32\taskschd.msc"},
    @{name="System Configuration";     path="$env:SystemRoot\System32\msconfig.exe"},
    @{name="Resource Monitor";         path="$env:SystemRoot\System32\resmon.exe"},
    @{name="Registry Editor";          path="$env:SystemRoot\regedit.exe"},
    @{name="System Information";       path="$env:SystemRoot\System32\msinfo32.exe"},
    @{name="Steps Recorder";           path="$env:SystemRoot\System32\psr.exe"},
    @{name="Windows Media Player";     path="$env:ProgramFiles\Windows Media Player\wmplayer.exe"},
    @{name="Task Manager";             path="$env:SystemRoot\System32\taskmgr.exe"},
    @{name="Notepad";                  path="$env:SystemRoot\System32\notepad.exe"}
)
foreach ($l in $tools) {
    $sc = $wshell.CreateShortcut("$desktop\$($l.name).lnk")
    $sc.TargetPath = $l.path
    $sc.Save()
}

Write-Host "All requested shortcuts and (if supported) tray icon setting applied."

Instructions and Notes

  • Save as CombinedDesktopSetup.ps1
  • Run as a standard user (or in <FirstLogonCommands> in your autounattend.xml).
  • The tray icon section works on Windows 10/11 21H2, and is ignored (with a safe message) on newer builds—this is the maximum automation Microsoft currently allows for all versions.
  • Shortcuts are placed in the current user’s desktop and cover ALL the items you listed (plus those in the screenshot).
  • Script is safe to run repeatedly (will overwrite/update shortcuts).

Let me know if you want advanced tweaks, additional custom tools, or a Dutch translation of shortcut names!
systemicon are all the same icons
 

Yes, all “system icons” exposed via the Windows registry or the Shell command (explorer.exe shell:...) are in fact the same icons you see in:
  • The classic "Desktop Icon Settings" dialog
  • Windows Explorer's "Show/Hide Desktop Icons"
  • shell:* locations when called via shortcut
List of actual system/"special" desktop icons that can be shown or scripted using registry or explorer shell verbs:
  • This PC (shell:MyComputerFolder)
  • User’s Files (shell:UsersFilesFolder)
  • Network (shell:NetworkPlacesFolder)
  • Control Panel (shell:ControlPanelFolder)
  • Recycle Bin (shell:RecycleBinFolder)
  • Desktop (shell:Desktop)
  • Documents (shell:Personal)
  • Downloads (shell:Downloads)
  • Music (shell:MyMusic)
  • Pictures (shell:MyPictures)
  • Videos (shell:MyVideo)
  • Home/Profile (shell:Profile)
  • Gallery (mapped to shell:MyPictures)

What does this mean for scripting?

The "Show on Desktop" registry and shortcut scripting covers all the commonly requested system desktop icons—there are no secret or "extra" system icons beyond these, unless new ones are added by Microsoft in future Windows builds. Icon appearance may change with Windows themes or builds, but the functional entries stay the same.
  • Using the script I provided (or combinations thereof), you’re showing or shortcutting every standard system icon recognized by Windows 11.

If you want:

  • Language-specific icon names (e.g., Dutch): let me know, I’ll localize the shortcut names for you.
  • Folders or programs with custom icons: You can additionally specify .IconLocation property for each .lnk in the PowerShell script.

Summary Table

Shell VerbDesktop Icon Displayed
shell:MyComputerFolderThis PC (Computer)
shell:UsersFilesFolderUser’s Files
shell:NetworkPlacesFolderNetwork
shell:ControlPanelFolderControl Panel
shell:RecycleBinFolderRecycle Bin
shell:DesktopDesktop
shell:PersonalDocuments
shell:DownloadsDownloads
shell:MyMusicMusic
shell:MyPicturesPictures/Gallery
shell:MyVideoVideos
shell:ProfileHome/Profile
All additional system/admin tools—like Task Manager, Device Manager, etc.—are simply .exe or .msc files and can be shortcut as shown.

You now have a scriptable, repeatable way to put all available system/common icons on any Windows 11 desktop—no matter the version—using existing shell/registry mechanisms!
If you want to target specific combinations, apply custom icons, or translate all shortcut names, just say so!
 

Yes, all “system icons” exposed via the Windows registry or the Shell command (explorer.exe shell:...) are in fact the same icons you see in:
  • The classic "Desktop Icon Settings" dialog
  • Windows Explorer's "Show/Hide Desktop Icons"
  • shell:* locations when called via shortcut
List of actual system/"special" desktop icons that can be shown or scripted using registry or explorer shell verbs:
  • This PC (shell:MyComputerFolder)
  • User’s Files (shell:UsersFilesFolder)
  • Network (shell:NetworkPlacesFolder)
  • Control Panel (shell:ControlPanelFolder)
  • Recycle Bin (shell:RecycleBinFolder)
  • Desktop (shell:Desktop)
  • Documents (shell:Personal)
  • Downloads (shell:Downloads)
  • Music (shell:MyMusic)
  • Pictures (shell:MyPictures)
  • Videos (shell:MyVideo)
  • Home/Profile (shell:Profile)
  • Gallery (mapped to shell:MyPictures)

What does this mean for scripting?

The "Show on Desktop" registry and shortcut scripting covers all the commonly requested system desktop icons—there are no secret or "extra" system icons beyond these, unless new ones are added by Microsoft in future Windows builds. Icon appearance may change with Windows themes or builds, but the functional entries stay the same.
  • Using the script I provided (or combinations thereof), you’re showing or shortcutting every standard system icon recognized by Windows 11.

If you want:

  • Language-specific icon names (e.g., Dutch): let me know, I’ll localize the shortcut names for you.
  • Folders or programs with custom icons: You can additionally specify .IconLocation property for each .lnk in the PowerShell script.

Summary Table

Shell VerbDesktop Icon Displayed
shell:MyComputerFolderThis PC (Computer)
shell:UsersFilesFolderUser’s Files
shell:NetworkPlacesFolderNetwork
shell:ControlPanelFolderControl Panel
shell:RecycleBinFolderRecycle Bin
shell:DesktopDesktop
shell:PersonalDocuments
shell:DownloadsDownloads
shell:MyMusicMusic
shell:MyPicturesPictures/Gallery
shell:MyVideoVideos
shell:ProfileHome/Profile
All additional system/admin tools—like Task Manager, Device Manager, etc.—are simply .exe or .msc files and can be shortcut as shown.

You now have a scriptable, repeatable way to put all available system/common icons on any Windows 11 desktop—no matter the version—using existing shell/registry mechanisms!
If you want to target specific combinations, apply custom icons, or translate all shortcut names, just say so!

are all the same icons as the explorer
 

Attachments

  • Windows 11 x64 (4)-2025-06-25-14-40-12.webp
    Windows 11 x64 (4)-2025-06-25-14-40-12.webp
    116.9 KB · Views: 0
Back
Top