Is it possible to make a shortcut to a relative path in Windows that runs as admin?

Trevor Merrifield picture Trevor Merrifield · Sep 12, 2013 · Viewed 31.1k times · Source

To create a shortcut with a relative path, set the target to the following.

%windir%\system32\cmd.exe /c start your_relpath\app.exe [your_args]

It is also straightforward to make the program run as administrator.

Properties > Advanced > Run as administrator

But putting the two together doesn't work. When cmd.exe is started as admin, it loses the current working directory and goes to %windir%\system32. The relative path starts there which is not intended.

Is there any way to make a shortcut that is both relative and run as admin?

Answer

Trevor Merrifield picture Trevor Merrifield · Sep 21, 2013

I didn't find an easy way but that's fine. I was concerned that shortcuts with absolute paths would break between computers. I didn't realize that Windows corrected them automatically. This seems sufficient, though relative paths would have been more elegant.

Although shortcuts, when created, point to specific files or folders, they may break if the target is moved to another location. Microsoft Windows has standard algorithms for fixing up shortcuts when they are moved. Windows 9x-based versions of Windows use a simple search algorithm to fix broken shortcuts.[1] On Windows NT-based operating systems and the NTFS file system, the target object's unique identifier is stored in the shortcut file and Windows can use the Distributed Link Tracking service for tracking the targets of shortcuts, so that the shortcut may be silently updated if the target moves to another hard drive.[4]

http://en.wikipedia.org/wiki/File_shortcut#Microsoft_Windows