28

要创建具有相对路径的快捷方式,请将目标设置为以下内容。

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

让程序以管理员身份运行也很简单。

Properties > Advanced > Run as administrator

但是将两者放在一起是行不通的。当cmd.exe以管理员身份启动时,它会丢失当前工作目录并转到%windir%\system32. 相对路径从那里开始,这不是预期的。

有没有办法制作一个相对又以管理员身份运行的快捷方式?

4

3 回答 3

12

我没有找到简单的方法,但这很好。我担心绝对路径的快捷方式会在计算机之间中断。我没有意识到 Windows 会自动更正它们。这似乎就足够了,尽管相对路径会更优雅。

虽然快捷方式在创建时指向特定文件或文件夹,但如果将目标移动到另一个位置,它们可能会中断。Microsoft Windows 具有用于在移动快捷方式时修复快捷方式的标准算法。基于 Windows 9x 的 Windows 版本使用简单的搜索算法来修复损坏的快捷方式。 [1] 在基于 Windows NT 的操作系统和 NTFS 文件系统上,目标对象的唯一标识符存储在快捷方式文件中,Windows 可以使用分布式链接跟踪服务来跟踪快捷方式的目标,因此如果目标移动到另一个硬盘。[4]

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

于 2013-09-21T02:42:32.173 回答
3

对于适用于相对路径的可移植快捷方式,请使用以下命令:

只需将其放在快捷方式属性的“目标”中:

%COMSPEC% /C "start GoogleChromePortable.exe -enableextensions -incognito"

预期行为:一个简短的 CMD 窗口将在 chrome 启动之前弹出并关闭。

注意:“开始于:”选项可以留空。另请注意,.exe 与快捷方式位于同一文件夹中,但移动文件夹并且快捷方式工作正常。

这已确认在 Win10 1607 中有效。

信用:不久前关于stackoverflow的其他一些帖子。

于 2017-03-13T02:53:42.623 回答
2

自动关闭窗口行为有问题。刚刚得到它与以下工作:

%COMSPEC% /c "start theRelativePath" | taskkill /F /IM cmd.exe

于 2019-11-20T12:58:23.173 回答