当前位置 博文首页 > 使用VBS修改二进制文件HEX数据

    使用VBS修改二进制文件HEX数据

    作者:admin 时间:2021-02-09 15:25

    可用之处还是有的,如:隐藏快捷方式中目标文件位置;破解XP中TCP/IP连接数限制;去掉RAR右键解压菜单等等。



    复制代码 代码如下:

    Public BinaryData

    If (lcase(right(wscript.fullname,11))="wscript.exe") Then
     WScript.Quit(0)
    End If

    If wscript.arguments.count<4 Then
     Wscript.Echo "Change File Hex. By: lxzzr  lxzzr@21cn.com"
     Wscript.Echo ""
     Wscript.Echo "Usage: cscript.exe " & WScript.ScriptName & " FilePath SavePath sHEX dHEX"
     Wscript.Echo "     : cscript.exe CHex.vbs "".\test.exe"" "".\new.exe"" ""80 7A 01 61"" ""80 7A 01 61"""
     WScript.Quit(0)
    End If

    sHEX = Replace(LCase(Wscript.Arguments(2)), " ", "")
    dHEX = Replace(LCase(Wscript.Arguments(3)), " ", "")

    Wscript.Echo "File: " & Wscript.Arguments(0)
    Wscript.Echo "sHEX: " & Wscript.Arguments(2)
    Wscript.Echo "dHEX: " & Wscript.Arguments(3)

    ReadBinary(Wscript.Arguments(0))

    MyData = Replace(BinaryData, sHEX, dHEX)

    WriteBinary Wscript.Arguments(1), MyData

    Wscript.Echo "All done."
    Wscript.Quit(0)

     


    Function ReadBinary(FileName)
     Dim Stream, ObjXML, MyNode

     Set ObjXML = CreateObject("Microsoft.XMLDOM")
     Set MyNode = ObjXML.CreateElement("binary")
     Set Stream = CreateObject("ADODB.Stream")

     MyNode.DataType = "bin.hex"

     Stream.Type = 1
     Stream.Open
     Stream.LoadFromFile FileName

     MyNode.NodeTypedValue = Stream.Read

     Stream.Close

     BinaryData = MyNode.Text

     Set MyNode = Nothing
     Set Stream = Nothing
     Set ObjXML = Nothing
    End Function


    Function WriteBinary(FileName, BufferData)
     Dim Stream, ObjXML, MyNode

     Set ObjXML = CreateObject("Microsoft.XMLDOM")
     Set MyNode = ObjXML.CreateElement("binary")
     Set Stream = CreateObject("ADODB.Stream")

     MyNode.DataType = "bin.hex"
     MyNode.Text = BufferData

     Stream.Type = 1
     Stream.Open
     Stream.Write MyNode.NodeTypedValue
     Stream.SaveToFile FileName, 2
     Stream.Close

     Set stream = Nothing
     Set MyNode = Nothing
     Set ObjXML = Nothing
    End Function

    js
    下一篇:没有了