22

Problem

If you create two shortcuts with the same target then only one of them is displayed in the Start Menu. This is true for:

  • search results within the Start menu
  • manually browsing program folders within the Start menu
  • pinned shortcuts within the Start menu

This is important because:

  • the shortcuts might have different settings defined in the Properties dialog, such as different compatibility settings, or be set to start in different directories.
  • some programs install a shortcut to a command prompt which is set to open in the program's installation folder. This enables easy access to the program from the command line without having to modify %PATH%, but it means that users who are unaware of this "lose access" to CMD. Programs that do this:

Things I've tried

  • Renaming shortcuts
    • Only the shortcut that comes first alphabetically is displayed
  • Using folders doesn't help
    • Only the shortcut in the folder that comes first alphabetically is displayed
  • Pinning shortcuts doesn't help
    • the pinned shortcut updates to point to the displayed shortcut

Steps to reproduce

Fully up-to-date Windows 10 Home.

  1. Start → search for "Command Prompt" (or "cmd").
  2. (Optional) Right-click on Command Prompt → Pin to Start.
    • This makes Command Prompt available when you open the Start menu without searching for anything.
  3. Right-click on Command Prompt → Open file location
    • This opens a File Explorer window in %APPDATA%\Microsoft\Windows\Start Menu\Programs\System Tools
  4. Copy the Command Prompt shortcut and rename the copy "AAA Command Prompt"
    • This ensures it appears before Command Prompt when files are listed alphabetically.
  5. (Optional) Right-click on the new AAA Command Prompt shortcut → Properties
    • Change something. (E.g. set the "Start in" directory to a different location, such as C:\)

Notice that it is now not possible to access Command Prompt from the Start menu - it has been replaced with AAA Command Prompt everywhere. If you rename AAA Command Prompt to ZZZ Command Prompt then you get back the ordinary version and lose the customised version. Moving the shortcuts to different folders within %APPDATA%\Microsoft\Windows\Start Menu\Programs\ doesn't help.


Any ideas?

1
  • One possible solution for such problem is copy the target executable and rename it and add it to start menu with normal way. Most thing should work as the original executable.
    – jw_
    Jan 29, 2020 at 13:19

4 Answers 4

20

As of Win 10 (1903) Aug 2019, it seems that the Start Menu will now allow duplicate shortcuts to the same .exe as long as the arguments are different. For this to work though, the "duplicate" shortcuts needs to be created by any method OTHER THAN making a copy of the already existing shortcut in the Start Menu and modifying it.

So, a shortcut created with the target as

C:\Windows\system32\cmd.exe /K "cd C:\"

will open up the command prompt at C:\, and a shortcut created with the target as

C:\Windows\system32\cmd.exe /K "cd C:\Users\"

will open up the command prompt at C:\Users\. Both shortcuts will be shown on the Start Menu, in addition to the default Command Prompt shortcut, even if they have the same name.

I was also able to create a duplicate shortcut to cmd.exe that will show up in the Start Menu and function identically by using ' as an argument. Target:

C:\Windows\system32\cmd.exe '

Which I can then modify to launch cmd with different properties (admin/compatability etc.). This may not be suitable for other executables.

1
  • 4
    [[the "duplicate" shortcuts needs to be created by any method OTHER THAN making a copy of the already existing shortcut]] - indeed, after I have re-created the second custom shortcut from scratch, it works like a charm!
    – Andrei LED
    May 17, 2020 at 17:46
4

A number of Windows 10 updates have caused issues with shortcuts, such as disabling the keyboard shortcuts to links and requiring links to be in specific locations, as well as this issue of allowing only a single target.

Though I know of no fix within Windows, some free third-party tools such as ClassicShell and Clavier+ provide a workaround. Because these tools' configurations can be saved or copied to new Windows installations and can easily be edited, I've come to prefer them to the native Window link files and keyboard shortcuts.

2
  • 3
    It's sad that functionality that should be properly handled by the OS is better handled by a third party. Dec 26, 2017 at 23:11
  • 1
    @TwistyImpersonator, agreed! This functionality had been working, but is steadily being removed... idle speculation: perhaps to shift attention to paid Metro apps or to use of Cortana? BTW, Linux now offers keyboard shortcuts to apps and a Start-menu app, drawers. Dec 27, 2017 at 16:57
4

The method I used was to open up an Administrator: Command Prompt and create a symbolic link to cmd.exe and then create a shortcut to that symlink

(Administrator) C:\> cd \Windows\System32

(Administrator) C:\Windows\System32> mklink cmd_admin.exe cmd.exe
symbolic link created for cmd_admin.exe <<===>> cmd.exe

Once you have created the symbolic link, you can make a copy of the Command Prompt shortcut (in any folder) and name it whatever you want. Then follow these steps:

  1. right click on the shortcut and click on Properties at the bottom of the pop-up menu
  2. if it's not already selected, click on the Shortcut tab of the Properties window that just opened up
  3. change the Target: from %windir%\system32\cmd.exe to %windir%\system32\cmd_admin.exe and click the OK button to save your change
  4. (optional) you could make additional changes from the same Properties pop-up such as:
    • the Start in: location
    • make it an Administrator: Command Prompt by clicking on the Advanced button and then checking the Run as adminstrator checkbox
2
  • In Windows 10 creating symlinks no longer requires admin privileges. In previous versions admin privileges are required, but in that case you could create a hard link instead with mklink /H cmd_link.exe cmd.exe as that doesn't require admin privileges in any version of Windows. May 11, 2019 at 22:06
  • @HullCityFan852 Pretty sure you still need admin to make a symlink in %windir%\system32 though
    – SamB
    Mar 28, 2022 at 18:52
0

This has been a bug since Windows 8:

https://gurupackager.blogspot.com/2013/12/disappearing-shortcuts-in-windows-8.html?spref=tw

I know of a fix but only if applying in the context of an MSI or App-V package.

For MSI, use the MsiShortcutProperty table - set 'PropertyKey' = 'System.AppUserModel.ID', then set 'PropVariantValue' to a unique string per shortcut.

For App-V, set a unique string in an tag in the shortcut definition.

I assume there must be a way to set this property when creating the shortcut via other means, but I have not investigated any other methods (e.g. WScript object to create shortcuts). 3rd party packaging tools that create setup.exes such as NSIS etc might not have caught up to allow for this feature.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .