中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-09 01:01
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 麻烦写个VBS(要求内详) 查看 772 回复 4
楼 主 麻烦写个VBS(要求内详) 发表于 2008-06-22 01:10 ·  中国 广西 玉林 电信
初级用户
积分 32
发帖 10
注册 2008-06-19 14:35
18年会员
UID 120591
性别 男
状态 离线
哪位热心的朋友帮忙写个VBS,要求如下:
在完成VBS之前我已建立好配置文件myext.txt,内容如下:
-------------------------------------------------
txt.lst .txt .reg .nfo .bat .cmd
image.lst .jpg .png .gif .bmp
exe.lst .exe .dll
.......
依此类推
.......
-------------------------------------------------

现在我想达到的目标是,针对当前文件扩展名(或当前文件夹),判断:
如果当前文件扩展名在已经定义好的myext.txt文件里,则取得该扩展名所在行的第一个字符串,即txt.lst或image.lst或exe.lst(这些.lst文件另有自定义内容),然后运行一个名叫popsel的程序,txt.lst或image.txt为其运行参数,即popsel txt.lst,
上面这个经过请教一些热心的朋友,我已经用批处理解决了。
findstr /i /c:"%~x1" c:\test\Myext.txt > c:\test\selpop.txt
for /f "tokens=1" %%i in (c:\test\selpop.txt) do "c:\test\popsel.exe" c:\test\%%i %1


现在有个问题就是,如果当前文件扩展名不在前面定义的配置文件里(事实上也不可能预先定义完),或者当前选择为文件夹或目录,则要求运行另外一个定义好的special.lst,用批处理弄了好长时间都出错,估计再弄下去也不会有结果了。
(批处理如何判断当前选择的是文件夹?)

当然,上面的myext.txt等文件是之前为批处理服务的,写出来是希望对理解和完成这个任务有帮助。相信如果用VBS的话可能都不需要这些预定义文件。

保守估计这个问题用VBS可能会好解决一些,所以特来请教熟悉VBS的朋友。希望有能力的朋友能帮忙完成这个VBS,谢谢!
2 发表于 2008-06-22 02:14 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
你是不是想在文件或者文件夹的右键菜单里面添加bat或者vbs啊?
3 发表于 2008-06-22 17:35 ·  中国 广西 玉林 玉州区 电信
初级用户
积分 32
发帖 10
注册 2008-06-19 14:35
18年会员
UID 120591
性别 男
状态 离线
和在右键差不多。但是我用Hoekey获取当前文件的路径,所以这个VBS或者BAT应该和右键是一样的。
4 发表于 2008-06-23 11:47 ·  中国 广西 玉林 电信
初级用户
积分 32
发帖 10
注册 2008-06-19 14:35
18年会员
UID 120591
性别 男
状态 离线
自己居然用批处理解决了,小小庆祝一下。顺便拉出来遛一遛,也许有人日后会用到。

findstr /i /c:"%~x1" c:\test\Myext.txt > c:\test\selpop.txt && goto ok
if "%~x1"=="" goto folder

start "" "c:\test\popsel.exe" "c:\test\special.lst" %1
exit

k
for /f "tokens=1" %%i in (c:\test\selpop.txt) do "c:\test\popsel.exe" c:\test\%%i %1
exit

:folder
start "" "c:\test\popsel.exe" "c:\test\folder.lst" %1

[ Last edited by jingyu57 on 2008-6-23 at 12:22 PM ]
5 发表于 2008-06-23 12:30 ·  中国 广东 东莞 电信
银牌会员
★★★
积分 1,284
发帖 538
注册 2002-11-02 00:00
23年会员
UID 129
性别 男
状态 离线
原来这里也研究VBS的?我看到的多是批处理。
论坛跳转: