我正在尝试制作一个简单(或者至少我认为是简单的)批处理文件,以查找特定文件类型的文件,然后使用特定程序创建打开它们的快捷方式。
经过大量的挖掘,我发现这最好通过VBScript来完成,所以我创建了一个小脚本来为我创建快捷方式。但是这不起作用,所以我希望有人能告诉我原因。谢谢。
MakeShortcuts.bat:
SET ShortcutPath=c:\shortcuts\
SET ProgramPath="c:\windows\notepad.exe"
SET SearchBaseDir="C:\Documents and Settings\"
FOR /R %SearchBaseDir% %%i IN (*.gba) DO (
createShortcut "%ShortcutPath%Open %%~ni.lnk" "%ProgramPath%" "%%i"
)
createShortcut.vbs:
set obShell = CreateObject("WScript.Shell")
sShortcut = obShell.ExpandEnvironmentStrings(WScript.Arguments.Item(0))
sTargetPath = obShell.ExpandEnvironmentStrings(WScript.Arguments.Item(1))
sArgument = obShell.ExpandEnvironmentStrings(WScript.Arguments.Item(2))
set shortcut = obShell.CreateShortcut(sShortcut)
shortcut.TargetPath = sTargetPath
shortcut.Arguments = sArgument
shortcut.Save
好的,当我运行MakeShortcuts.bat时,它在命令行中给我一个消息 [系统找不到指定的驱动器]。
它按预期创建了快捷方式,但目标参数周围没有引号,这会阻止快捷方式正常工作。我认为这也可能与上述错误消息有关。
我对VBScript非常陌生,所以我可能错过了一些很愚蠢的东西。请帮助我。
谢谢。