当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 把任意文件转成vbs文件的file2vbs的vbs代码

VBScript
用vbs清空iis log 中自己登录ip的记录
vbs sendmail发邮件带附件方法
用vbs通过135端口执行命令的脚本
用vbs实现的瞬间关闭多个系统进程的脚本
vbs 中调用shell.application 简单函数
vbs wmi获取电脑硬件信息实例
用vbscript实现隐藏任务栏图标的脚本
vbs正则表达式代码
vbs版IP地理位置查询小偷
超级厉害的VBS定时提醒脚本 Remind.vbs
vbs实现的支持拖动的txt文本切割器
VBS如何察看或获得剪切板内容的脚本
VBS备忘录启动代码
VBS脚本使用WMI操作注册表的代码
vbs xmldom初次实战获取QQ签名的代码
VBS破坏性应用代码
vbs生成ACCESS数据里所有表的字段
vbs实现的图片自适应表格,目前最佳解决方案!
ProcessMagnifier.vbs进程查看
用于提取网易文件的hta代码

VBScript 中的 把任意文件转成vbs文件的file2vbs的vbs代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 85 ::
收藏到网摘: n/a


Tr4c3:为了方便在dos下使用,我把inputbox改成了args。
复制代码 代码如下:

'Program By xiaolu
'name:file2vbs.vbs
On error resume next
Set Args = Wscript.Arguments
If Args.length<>2 Then
Wscript.Echo "Usage:" & Wscript.ScriptName & " c:\muma.exe c:\muma.vbs"
Wscript.Quit
End If
do while 1
fname = Args(0)
Set Ado = CreateObject("adodb.stream")
With Ado
.Type = 1
.open
.loadfromfile fname
ss = .read
End With
exit do
Loop
fname = Args(1)
Set Fso=CreateObject("Scripting.FileSystemObject")
Set File=fso.OpenTextFile(fname,2, True)
lens=lenB(ss) mod 500
For j=0 to int(lenB(ss)/500)-1
if j=0 then
File.writeline "ss="""&Bin2Str(midb(ss,500*j+1,500))&"""_"
else
File.writeline "+"""&Bin2Str(midb(ss,500*j+1,500))&"""_"
end if
next
if lens>0 then
File.writeline "+"""&Bin2Str(rightb(ss,lens))&""""
else
File.writeline "+"&chr(34)&chr(34)
end if
File.writeline ""
File.writeline "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)"
File.writeline "Set s=CreateObject(""ADODB.Stream""):with s:.Mode = 3:.Type = 1:.Open():.Write ss:.SaveToFile
wscript.arguments(0),2:end with"
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

重新生成文件的办法
cscript xx.vbs x:\xxxx.exe