1

这里的问题是,在创建到批处理文件的符号链接后,该链接不会运行批处理文件。例子:

mklink x x.cmd

单击它会在记事本中x打开!x.cmd普通快捷方式(.lnk 文件)按预期工作。

> ftype cmdfile
cmdfile="%1" %*
> assoc .cmd
.cmd=cmdfile

所以每个 .cmd 文件都应该自己运行。

有解决办法吗?

4

1 回答 1

3

一种方法是建立硬链接(mklink /H)。但是因为我认为你只需要某种捷径,试试这个:

1)像这样(shortcut_helper.vbs)制作一个shell脚本*.vbs:

set WshShell = WScript.CreateObject("WScript.Shell" )
set oShellLink = WshShell.CreateShortcut(Wscript.Arguments.Named("shortcut") & ".lnk")
oShellLink.TargetPath = Wscript.Arguments.Named("target")
oShellLink.Arguments = Wscript.Arguments.Named("arg")
oShellLink.WindowStyle = 1
oShellLink.Save

2)让你的批处理脚本从一个批处理文件中像这样启动它:

path_to_vbs\shortcut_helper /target:"file_path\file.bat" /shortcut:"shortcut_name" /arg:"optional_arguments"

现在 2) 为您创建快捷方式 (*.lnk),然后您可以将它们移动到您喜欢的任何位置 =)

不过要小心,*.vbs 文件在某些​​情况下可能需要管理员权限。

于 2013-04-05T13:33:39.217 回答