6

Any web search to create a Windows shortcut on the Desktop advises:

  • Right-click the Desktop
  • Select New > Shortcut

The New > Shortcut option is not available on my computer. Is there another way to create a generic shortcut on Windows 10/11?

Background: Unsure why I don't have the Shortcut option. This menu was edited some time ago, though I cannot recall the exact details. All I see now are Folder and Text Document (which are all the options I need 99% of the time).

6
  • 1
    try this; Drug and drop any program from start menu > right click > properties edit as you want
    – ZoomMan2
    Commented May 28 at 8:23
  • It works with non-MS store apps only
    – ZoomMan2
    Commented May 28 at 8:28
  • 1
    @ZoomMan2: So simple! Just copy any existing shortcut and edit the details. That works for me.
    – AlainD
    Commented May 28 at 8:51
  • 2
    *Drag not drug 🤭🧐
    – ZoomMan2
    Commented May 28 at 10:12
  • 1
    Open file explorer. Copy application file. Find location on desktop. Right click, choose "paste shortcut". Commented May 28 at 23:16

6 Answers 6

4

Easiest ways to do this are:

  • Drag and drop any program from the start menu > right click > properties and edit the details. (Does not work with MS Store apps.)

  • Copy any existing shortcut and edit the details.

1
  • 1
    Perfect! This should work with any existing shortcut. You can also create a temporary shortcut by right-clicking any program, select Create shortcut, then edit details.
    – AlainD
    Commented May 28 at 10:42
15

Start dragging some file, preferably the file you want to make a shortcut to. Before you release the mouse, hold down the ALT key. You should see the tooltip change to "Create link in <destination name>". Once you release the mouse, a shortcut to the file is made where you dropped it. You can then proceed to edit the shortcut, if required.

3
  • 3
    Been using Windows for 20+ years and never knew about ALT (create shortcut) and CTRL (copy instead of move) as you drag a file. Just tested and this also works in Windows XP (although only a little icon, rather than text, in the tooltip). Awesome, thanks!
    – AlainD
    Commented May 29 at 8:10
  • 5
    Also worth noting that SHIFT forces a move (a "shift") rather than a copy. By default, Explorer will "move" when dragging and dropping a file between locations on the same drive, but "copy" when dragging and dropping between different drives. Holding Shift changes the latter case to a "move".
    – canton7
    Commented May 29 at 11:17
  • 2
    Another useful tip: use the right mouse button when clicking and dragging a file or folder (no modifier keys required). On releasing the button you'll get a menu with options of what you'd like to do with the file you've dragged to that location: either copy, move or create shortcut(s) to that location. EDIT: I see that's been suggested in an answer below.
    – pcdev
    Commented May 29 at 23:35
9

You can drag and drop any icon/program with the right mouse button instead of the left.

This provides a context menu on drop which allows to create a shortcut.

6

It may not be the same kind of shortcut, but you can create a symbolic link with mklink on the command line.

mklink shortcut-filename target-filename

With powershell, you can create a lnk shortcut (like the new -> shortcut context menu action would produce):

$s=(New-Object -COM WScript.Shell).CreateShortcut('shortcut-filename.lnk');$s.TargetPath='target-filename';$s.Save()
1

If you wish to restore the usual behavior and add shortcut back to the right-click > new menu it is defined by the following registry values:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.lnk]
@="lnkfile"

[HKEY_CLASSES_ROOT\.lnk\ShellEx]

[HKEY_CLASSES_ROOT\.lnk\ShellEx\{000214EE-0000-0000-C000-000000000046}]
@="{00021401-0000-0000-C000-000000000046}"

[HKEY_CLASSES_ROOT\.lnk\ShellEx\{000214F9-0000-0000-C000-000000000046}]
@="{00021401-0000-0000-C000-000000000046}"

[HKEY_CLASSES_ROOT\.lnk\ShellEx\{00021500-0000-0000-C000-000000000046}]
@="{00021401-0000-0000-C000-000000000046}"

[HKEY_CLASSES_ROOT\.lnk\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}]
@="{00021401-0000-0000-C000-000000000046}"

[HKEY_CLASSES_ROOT\.lnk\ShellEx\{E357FCCD-A995-4576-B01F-234630154E96}]
@="{00021401-0000-0000-C000-000000000046}"

[HKEY_CLASSES_ROOT\.lnk\ShellNew]
"Handler"="{ceefea1b-3e29-4ef1-b34c-fec79c4f70af}"
"IconPath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\
  00,68,00,65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,\
  31,00,36,00,37,00,36,00,39,00,00,00
"ItemName"="@shell32.dll,-30397"
"MenuText"="@shell32.dll,-30318"
"NullFile"=""

[HKEY_CLASSES_ROOT\.lnk\ShellNew\Config]
"DontRename"=""

This code block can be copy-pasted into a text editor like notepad, saved as a .reg file and imported into your registry.

0

For web shortcuts you can use the following python function, which essentially just writes a special text file:

import os

def make_shortcut(name, path, target):

    shortcut_name = "".join(c for c in name if (c.isalnum() or c in "._- "))
    shortcut_path = os.path.join(path, shortcut_name + '.url')
    
    lines = '\r\n'.join([
        '[InternetShortcut]',
        'URL=%s' % target,
        'IconFile="C:\Program Files\Google\Chrome\Application\chrome.exe"',
        'IconIndex=0',
        ''
    ])

    with open(shortcut_path, mode='w') as shortcut:
        shortcut.write(lines)

I expect it is also possible to create other types of shortcuts via a similar method but I don't know the syntax.

1
  • 2
    Microsoft maintains a document describing the complete structure of the binary .LNK format: PDF or HTML
    – smitelli
    Commented May 29 at 17:26

You must log in to answer this question.

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