Nota: Este artigo foi publicado originalmente em 2015. Alguns passos, comandos ou versões de software podem ter mudado. Consulte a documentação atual de Windows para as informações mais recentes.

When deploying software in a business environment or setting up a shared computer, you often need to place a program shortcut where every user account on the machine can see it. Windows provides dedicated “Public” or “All Users” folders for this purpose. This guide covers the exact folder paths for every modern version of Windows, how to create shortcuts manually and with PowerShell, and how to deploy shortcuts at scale using Group Policy.

Understanding Windows Shortcut Locations

Windows maintains two levels of user profile folders for desktop and Start Menu items:

  • Per-user folders — shortcuts placed here appear only for a single user account.
  • Public (All Users) folders — shortcuts placed here appear for every user who logs into the machine.

When a user views their desktop or Start Menu, Windows merges the contents of both the per-user folder and the public folder. This means any .lnk file you place in the public folder automatically shows up for all accounts.

All Users Folder Paths by Windows Version

Desktop Shortcuts

Windows VersionAll Users Desktop Path
Windows 11C:\Users\Public\Desktop
Windows 10C:\Users\Public\Desktop
Windows 8 / 8.1C:\Users\Public\Desktop
Windows 7C:\Users\Public\Desktop
Windows VistaC:\Users\Public\Desktop
Windows XPC:\Documents and Settings\All Users\Desktop

Start Menu Shortcuts

Windows VersionAll Users Start Menu Path
Windows 11C:\ProgramData\Microsoft\Windows\Start Menu\Programs
Windows 10C:\ProgramData\Microsoft\Windows\Start Menu\Programs
Windows 8 / 8.1C:\ProgramData\Microsoft\Windows\Start Menu\Programs
Windows 7C:\ProgramData\Microsoft\Windows\Start Menu\Programs

The C:\ProgramData folder replaced the older C:\Documents and Settings\All Users\Application Data path starting with Windows Vista.

Using Environment Variables

Rather than hard-coding paths, you can use environment variables that resolve correctly regardless of the Windows version or drive letter:

:: All Users Desktop
%PUBLIC%\Desktop

:: All Users Start Menu Programs
%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs

:: Current user's desktop (for reference)
%USERPROFILE%\Desktop

In PowerShell, you can also use the .NET special folders API:

# All Users Desktop
[Environment]::GetFolderPath("CommonDesktopDirectory")

# All Users Start Menu
[Environment]::GetFolderPath("CommonStartMenu")

# All Users Start Menu Programs subfolder
[Environment]::GetFolderPath("CommonPrograms")

Accessing the Hidden Public Desktop Folder

By default, the C:\Users\Public\Desktop folder is hidden in File Explorer. There are three ways to access it:

Option 1: Type the Path Directly

Open File Explorer and type the following into the address bar:

C:\Users\Public\Desktop

Press Enter, and the folder will open even though it is hidden.

Option 2: Use the Run Dialog

Press Win + R to open the Run dialog and type:

%PUBLIC%\Desktop

Option 3: Show Hidden Files

  1. Open File Explorer.
  2. Click the View tab (Windows 10) or click the three-dot menu and select Options (Windows 11).
  3. Check Hidden items (Windows 10) or go to View tab in Folder Options and select Show hidden files, folders, and drives (Windows 11).
  4. Navigate to C:\Users\Public and the Desktop folder will now be visible.

Creating Shortcuts Manually

Method 1: Copy an Existing Shortcut

The simplest approach is to find an existing shortcut on your desktop and copy it to the public folder:

  1. Right-click the shortcut on your desktop and select Copy.
  2. Navigate to C:\Users\Public\Desktop.
  3. Right-click in the folder and select Paste.
  4. You will need to confirm the UAC (User Account Control) prompt since the Public Desktop requires administrator privileges to modify.

Method 2: Create a New Shortcut Directly

  1. Navigate to C:\Users\Public\Desktop.
  2. Right-click in the empty space and select New > Shortcut.
  3. Browse to the program executable (e.g., C:\Program Files\MyApp\MyApp.exe).
  4. Enter a name for the shortcut and click Finish.

Creating Shortcuts with PowerShell

For automation and scripting, PowerShell provides a reliable way to create shortcuts programmatically. This is especially useful in deployment scripts, SCCM task sequences, or Intune remediation scripts.

Basic Desktop Shortcut

# Create a shortcut on the All Users desktop
$WshShell = New-Object -ComObject WScript.Shell
$ShortcutPath = "$env:PUBLIC\Desktop\My Application.lnk"
$Shortcut = $WshShell.CreateShortcut($ShortcutPath)
$Shortcut.TargetPath = "C:\Program Files\MyApp\MyApp.exe"
$Shortcut.WorkingDirectory = "C:\Program Files\MyApp"
$Shortcut.Description = "Launch My Application"
$Shortcut.IconLocation = "C:\Program Files\MyApp\MyApp.exe,0"
$Shortcut.Save()

Write-Host "Shortcut created at $ShortcutPath"

Start Menu Shortcut

# Create a shortcut in the All Users Start Menu Programs folder
$WshShell = New-Object -ComObject WScript.Shell
$StartMenuPath = "$env:ALLUSERSPROFILE\Microsoft\Windows\Start Menu\Programs"
$ShortcutPath = "$StartMenuPath\My Application.lnk"
$Shortcut = $WshShell.CreateShortcut($ShortcutPath)
$Shortcut.TargetPath = "C:\Program Files\MyApp\MyApp.exe"
$Shortcut.WorkingDirectory = "C:\Program Files\MyApp"
$Shortcut.Description = "Launch My Application"
$Shortcut.Save()

Write-Host "Start Menu shortcut created at $ShortcutPath"

Start Menu Subfolder

To organize your shortcut into a subfolder within the Start Menu:

# Create a subfolder and shortcut in the All Users Start Menu
$StartMenuFolder = "$env:ALLUSERSPROFILE\Microsoft\Windows\Start Menu\Programs\My Company"

# Create the folder if it does not exist
if (-not (Test-Path $StartMenuFolder)) {
    New-Item -ItemType Directory -Path $StartMenuFolder -Force
}

$WshShell = New-Object -ComObject WScript.Shell
$ShortcutPath = "$StartMenuFolder\My Application.lnk"
$Shortcut = $WshShell.CreateShortcut($ShortcutPath)
$Shortcut.TargetPath = "C:\Program Files\MyApp\MyApp.exe"
$Shortcut.Arguments = "--some-flag"
$Shortcut.WorkingDirectory = "C:\Program Files\MyApp"
$Shortcut.WindowStyle = 1   # 1 = Normal, 3 = Maximized, 7 = Minimized
$Shortcut.Save()

Shortcut with URL Target

To create a web link shortcut (.url file) instead of a program shortcut:

# Create a URL shortcut on the All Users desktop
$UrlShortcutPath = "$env:PUBLIC\Desktop\Company Intranet.url"
$UrlContent = @"
[InternetShortcut]
URL=https://intranet.company.com
IconIndex=0
IconFile=C:\Windows\System32\shell32.dll
"@
Set-Content -Path $UrlShortcutPath -Value $UrlContent

Deploying Shortcuts with Group Policy

For domain-joined environments, Group Policy Preferences (GPP) is the most scalable way to deploy shortcuts to multiple computers.

Passo-by-Passo GPP Shortcut Deployment

  1. Open Group Policy Management on a domain controller or management workstation.
  2. Create a new GPO or edit an existing one linked to the desired OU.
  3. Navigate to Computer Configuração > Preferences > Windows Settings > Shortcuts (or use User Configuração if you want per-user targeting).
  4. Right-click Shortcuts and select New > Shortcut.
  5. Configure the shortcut properties:
    • Action: Create (use Replace if you want to overwrite an existing shortcut)
    • Name: The display name of the shortcut
    • Target type: File System Object
    • Location: All Users Desktop (or All Users Start Menu)
    • Target path: The full path to the executable
    • Icon file path: Path to the icon (optional)
  6. Click OK to save.

The shortcut will be created on target computers during the next Group Policy refresh (typically within 90 minutes, or immediately after running gpupdate /force).

Item-Level Targeting

GPP supports item-level targeting, which lets you conditionally deploy shortcuts based on criteria such as:

  • Operating system version (e.g., only Windows 11)
  • Segurança group membership
  • Computer name patterns
  • IP address ranges
  • Registry key values

This is useful when a particular application is only installed on certain machines.

Removing Shortcuts for All Users

To remove a shortcut from all users, simply delete the .lnk file from the public folder:

# Remove a desktop shortcut for all users
Remove-Item "$env:PUBLIC\Desktop\My Application.lnk" -Force

# Remove a Start Menu shortcut for all users
Remove-Item "$env:ALLUSERSPROFILE\Microsoft\Windows\Start Menu\Programs\My Application.lnk" -Force

Solução de Problemas Problemas Comuns

Shortcut Does Not Appear for Other Users

  • Verify the shortcut is in C:\Users\Public\Desktop and not in a specific user’s C:\Users\<username>\Desktop folder.
  • Check that the shortcut file has appropriate read permissions for the Users group.
  • Ensure hidden files are visible if you are browsing in File Explorer.

Access Denied When Creating Shortcuts

  • Writing to the Public Desktop or ProgramData folders requires administrator privileges. Run your script or File Explorer as Administrator.
  • In Group Policy, ensure the GPO has the correct security filtering to apply to the target computers or users.

Shortcut Works for Admin but Not Standard Users

  • The target executable may be in a folder that standard users cannot access. Verify that the program’s installation directory grants read and execute permissions to the Users group.
  • If the shortcut requires elevation, standard users will see a UAC prompt. Consider whether the application truly requires admin rights.

Artigos Relacionados