NT Syntax


Create a windows shortcut (.LNK file)

Shortcut.exe is not installed by default, you will find Shortcut.exe on some (but not all) OEM Windows 95 installation CD's

      SHORTCUT [options]

   Source options
   -t target    : The path and file name of the application.
-a arguments : The arguments passed when the shortcut is used.
-d directory : The folder to start the application in.
-i iconfile : The file the icon is in. -x index : The index into the icon file. options for the shortcut file to be created -n name : The path and file name (.LNK) of the shortcut file. -c : Change existing shortcut. -r : Resolve broken shortcut. -f : Force overwrite of an existing short cut. -s : Make shortcut non tracking (Stupid)
Export options -u [spec] : ECHO the contents of an existing shortcut.
'all' is the same as 'natdix' but the letters of 'natdix' specify the options to be exported
(the same option can be specified more than once
e.g. -u natn) -l logfile : save any error messages in the specified file

If shortcut.exe fails to create a new shortcut, it does NOT set an errorlevel.


   @ECHO off 
   MD %userprofile%"\start menu\programs\MY APP"
   SHORTCUT -f -t C:\MyApp.exe -n %userprofile%"\start menu\programs\MY APP\MY APP"

Alternatively use WSH to create a shortcut:
optional sections in the VBscript below are commented out

   Set oWS = WScript.CreateObject("WScript.Shell")
   sLinkFile = "C:\MyShortcut.LNK"
   Set oLink = oWS.CreateShortcut(sLinkFile)
   oLink.TargetPath = "C:\Program Files\MyApp\MyProgram.EXE"
   '	oLink.Arguments = ""
   '	oLink.Description = "MyProgram"
   '	oLink.HotKey = "ALT+CTRL+F"
   '	oLink.IconLocation = "C:\Program Files\MyApp\MyProgram.EXE, 2"
   '	oLink.WindowStyle = "1"
   '	oLink.WorkingDirectory = "C:\Program Files\MyApp"

Resolve Shortcut Links

If a shortcut to a file breaks, then by default Windows will attempt to automatically locate the shortcut destination by performing a simple search. To change this default - edit the registry:

This can also be controlled at Group Policy level in: User Config\Admin Templates\Start Menu & Taskbar.

If a shortcut .LNK file is copied to another machine, then by default the shortcut's target may be automatically updated - e.g. cretae a shortcut on Machine1 to C:\AUTOEXEC.BAT when copied to Machine2 the shortcut will point back to \\Machine1\c$\AUTOEXEC.BAT To change this default - edit the registry:


Often confused with shortcuts, Internet Explorer Favourite (.URL) files are simple text files which you can create with a few ECHO statements.

"Life is like a B movie. You don't want to leave in the middle of it but you don't want to see it again." - Ted Turner

Related Commands:

MD - Create folder(s)
Q158682 - Shortcuts created resolve to UNC Path (Link Tracking)
NTFAQ - Disable NTFS resolving of broken shortcuts
cpanel.zip - Control Panel shortcuts

Equivalent Linux BASH commands:

symlink - Make a new name for a file
ln - Make links between files

Simon Sheppard