我试图自动创建快捷方式,但不知道如何从参数中获取文件名。代码运行方式为:
cscript shortcut.vbs“c:\ folder \ targetfile.ext”
Set objFS=CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
strFile= objArgs(0)
Set objFile = objFS.OpenTextFile(strFile)
Set objFile = objFS.GetFile(strFile)
WScript.Echo objFile.Path
Set oWS = WScript.CreateObject("WScript.Shell")
sLinkFile = "c:\myfolder\myshortcut.lnk"
Set oLink = oWS.CreateShortcut(sLinkFile)
oLink.TargetPath = objFile.Path
oLink.Save
是否可以在以下行中将用户指定的文件夹和自动生成的文件名与参数扩展为.lnk
sLinkFile = "c:\myfolder\myshortcut.lnk"
这样的事情:
sLinkFile = "c:\myfolder\" + filenamefromargument(e.g targetfile) + ".lnk"
提前thx:)
答案 0 :(得分:0)
@Noodles第一个建议将起作用 - 他的第二个建议只是意味着你应该在使用之前指定strFile = objArgs(0)
。
你只是通过'伪示例'来混淆每个人
您首先将"c:\folder\targetfile.ext"
指定为参数
然后sLinkFile = "c:\myfolder\myshortcut.lnk"
我认为你的意思是sLinkFile = "c:\myfolder\myshortcut.ext"
您需要的第二部分是查看FileSystemObject方法以提取文件夹和基本名称 - 然后附加您的扩展名
类似的东西:
之后 strFile= objArgs(0)
插入此代码:
With objFS
strLinkFile = .GetParentFolderName(strFile) & .GetBaseName(strFile) & ".lnk"
End With