exe转vbs的vbs代码

来源:百度文库 编辑:神马文学网 时间:2024/04/30 02:18:50

  这个不是exe2vbs 所有类型的文件都可以转化的 不过限于string的大小 文件不能太大 我测试过3m的文件是可以的
  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本篇文章来源于 黑客基地-全球最大的中文黑客站 原文链接:http://www.hackbase.com/tech/2009-01-31/43519.html