去掉RAR右键解压菜单的VBS代码

原理: http://demon.tw/programming/vbs-binary-file-another.html


Public ReadBinary
ReadBinaryDat(".1.exe")
BinaryDat = Replace(Replace(ReadBinary, "526172211a07", "522172211a07"), "807a0161", "807a0121")
WriteBinaryDat "new.exe", BinaryDat
Function ReadBinaryDat(FileName)
 Const adTypeBinary = 1
 Dim stream, xmldom, node
 Set xmldom = CreateObject("Microsoft.XMLDOM")
 Set node = xmldom.CreateElement("binary")
 node.DataType = "bin.hex"
 Set stream = CreateObject("ADODB.Stream")
 stream.Type = adTypeBinary
 stream.Open
 stream.LoadFromFile FileName
 node.NodeTypedValue = stream.Read
 stream.Close
 Set stream = Nothing
 ReadBinary = node.Text
 Set node = Nothing
 Set xmldom = Nothing
End Function

Sub WriteBinaryDat(FileName, Buf)
 Const adTypeBinary = 1
 Const adSaveCreateOverWrite = 2
 Dim stream, xmldom, node
 Set xmldom = CreateObject("Microsoft.XMLDOM")
 Set node = xmldom.CreateElement("binary")
 node.DataType = "bin.hex"
 node.Text = Buf
 Set stream = CreateObject("ADODB.Stream")
 stream.Type = adTypeBinary
 stream.Open
 stream.write node.NodeTypedValue
 stream.saveToFile FileName, adSaveCreateOverWrite
 stream.Close
 Set stream = Nothing
 Set node = Nothing
 Set xmldom = Nothing
End Sub