中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: [分享]vbs脚本打包 上一主题 | 下一主题
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『楼 主』:  [分享]vbs脚本打包

我马甲的原文: hi.baidu.com/paktc/b ... 因个人需要而做的,通用性就没去想拉~ 写它的原因: 我喜欢把脚本用txt格式放在ys168网盘里(经常换地方上线,有网盘真好), 这样就可以直接打开-复制文本而不用另存。不过假如是几个脚本配合执行, 或者有其他外部文件环境需要用到,那就又要压缩了,于是就做了曾经的: 批处理脚本打包工具 www.cn-dos.net/forum ... (回看后才想起来,该代码有个地方可以合并) 这次打算用vbs来一个,顺便修理一下,代码如下:
'#act#parcel.vbe
''ThisScriptParcel,code by paktc + if_exist + 523066680
:set fs=createobject("scripting.filesystemobject")
:set readme=fs.opentextfile(wscript.scriptname)
:act=0
:while readme.atendofstream=false
: linea=readme.readline
: if left(linea,6)=chr(39) &"#end#" then
:     act=0 : fnow.close
: end if
: if act=1 then
:     fnow.writeline mid(linea,2)
: end if
: if left(linea,6)=chr(39) &"#act#" then
:     act=1 
:     set fnow=fs.createtextfile(mid(linea,7),true)
: end if
:wend
'wscript.quit
'#end#parcel.vbe
fold=replace(wscript.scriptfullname,wscript.scriptname,"")
set parcel=fs.opentextfile("parcel.vbe",8)
strx=""
format="txt,vbs,bat"
for each fname in fs.getfolder(fold).files
if replace(format,lcase(right(fname,3)),"")<>format then
if replace(fname,wscript.scriptname,"")=fname then
    strx=strx& fname &vbcrlf
    set readx=fs.opentextfile(fname)
    parcel.writeline chr(39) &"#act#"&fs.getfilename(fname)
    parcel.writeline chr(39) &replace(readx.readall,vbcrlf,vbcrlf &chr(39))
    parcel.writeline chr(39) &"#end#"&fs.getfilename(fname)
end if
end if
next
readx.close : parcel.close : msgbox strx
wscript.quit
打包当前的vbs txt bat三种脚本(个人用途) 生成parcel.vbe 包裹里有个代码,来判断自身内容并导出的,这个代码要 打包脚本来生成。而打包脚本本身要读取自身的这部分代码,并导出给包裹的开头。 因为功能有相同之处,我就写成读取自身的这部分并交给包裹,所以减少了一段。 批处理那个我就不改了,让它沉淀一下。^_^ [ Last edited by 523066680 on 2009-10-21 at 08:57 ]




2009-10-21 08:45
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 2 楼』:  

哪,既然发上来了,就做下说明 代码有一句 format="txt,vbs,bat" 这里面定义被打包的文件格式的。后面的操作是在文件集里面获取格式并判断 是否为其中之一。


   此帖被 +9 点积分       点击查看详情   
评分人:【 plp626 分数: +9  时间:2009-10-22 11:22




2009-10-21 09:03
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 3 楼』:  

slore这次不帮我看一下拉。每次我发应用类的作品都没人鸟我,你说我不写效果 我写什么好?




2009-10-22 09:10
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 4 楼』:  

我来灌灌水,辛苦了, 楼主已经代替我成为论坛的雷锋




山外有山,人外有人;低调做人,努力做事。 进入网盘(各种工具)~~ 空间~~cmd学习
2009-10-22 11:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 5 楼』:  

你们都没我水。-——-




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2009-10-22 11:36
查看资料  发短消息 网志   编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 6 楼』:  

辛苦倒不会,本来做给自己用的,偶尔还可以给自己的作品做备份, 用的挺好就发上来了,看来很少人用的上~ 沉就沉吧




2009-10-22 14:29
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 7 楼』:  

看在周日的份上,我再奋力一顶。。。。。




2009-10-25 08:04
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: