中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 04:38
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » VBS 取参数名称的问题
可打印版本  1,117 / 3
第1楼 wewebb 发表于 2010-11-10 18:52
初级用户 发帖 53 积分 66
VBS 取参数名称的问题
如果只取参数的名称,不要扩展名和路径。有简便的写法吗?


我只想到一个麻烦的写法:
for each arg in Wscript.Arguments
for each n in split(arg,"\",-1,1)
FullName = n
next
name=split(FullName,".",-1,1)
msgbox name(0)

另外,那里有 VBS 关于各个对象的详解说明,能否给个链接,百度上好多是不全的。

[ Last edited by wewebb on 2010-11-10 at 18:54 ]
第2楼 slore 发表于 2010-11-11 13:27
铂金会员 发帖 2,478 积分 5,212
Arguments 对象网上介绍还是详细。。。不解你要这样用?
第3楼 wewebb 发表于 2010-11-11 16:40
初级用户 发帖 53 积分 66
是这样的。我想将任意程序拖到 VBS 里就能够在桌面上生成以该程序命名的 lnk 快捷方式。所以要用去掉路径和扩展名。

代码如下:



[ Last edited by wewebb on 2010-11-11 at 16:47 ]
第4楼 slore 发表于 2010-11-12 17:18
铂金会员 发帖 2,478 积分 5,212
哦。
这个是字符串的处理了。
targetpath = Wscript.Arguments(0)
sPos = Instrrev(targetpath,"\") + 1
ePos = Instrrev(targetpath,".")
If ePos > sPos Then
slen = ePos - sPos
Else
slen = Len(targetpath)
End If
name = Mid(targetpath,sPos,slen)
msgbox name
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023