当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > XorEncode的vbs实现代码

VBScript
VBS教程:运算符-Xor 运算符
VBS教程:运算符-减运算符 (-)
VBS教程:运算符-Or 运算符
VBS教程:运算符-运算符概述
VBS教程:运算符-运算符优先级
VBS教程:运算符-Not 运算符
VBS教程:运算符-乘运算符 (*)
VBS教程:运算符-Mod 运算符
VBS教程:运算符-逻辑运算符
VBS教程:运算符-Is 运算符
VBS教程:运算符-\ 运算符
VBS教程:运算符-Imp 运算符
VBS教程:运算符-幂运算符 (^)
VBS教程:运算符-Eqv 运算符
VBS教程:运算符-除运算符 (/)
VBS教程:运算符-连接运算符 (&)
VBS教程:运算符-比较运算符
VBS教程:运算符-赋值运算符 (=)
VBS教程:运算符-And 运算符
VBS教程:运算符-运算符(+)

VBScript 中的 XorEncode的vbs实现代码


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

复制代码 代码如下:

If Not WScript.Arguments.Count=1 Then WScript.Echo "请将要转换的vbs文件托拽到我身上!":WScript.Quit
Set fso=CreateObject("Scripting.FileSystemObject")
Set self=fso.OpenTextFile(WScript.ScriptFullName)
Set vbs=fso.CreateTextFile(Left(WScript.Arguments(0),Len(WScript.Arguments(0))-4)+"_XorEncode.vbs")
Do Until self.AtEndOfStream
aline=self.ReadLine
If aline="Function Decode(s,n)" Then w=true
If w Then vbs.WriteLine aline
Loop
Set src=fso.OpenTextFile(WScript.Arguments(0))
Randomize:n=Int(255*Rnd+1)
vbs.WriteLine "Execute("&"Decode("""&Encode(src.Read(fso.GetFile(WScript.Arguments(0)).Size),n)&""","&n&"))"
src.Close:vbs.Close:self.Close
Set src=Nothing:Set vbs=Nothing:Set self=Nothing:Set fso=Nothing
WScript.Echo "Successful!"
Function Encode(s,n)
For i=1 To Len(s)
Encode=Encode&" "&(Asc(Mid(s,i,1)) Xor n)
Next
End Function
Function Decode(s,n)
ns=Split(Mid(s,2,Len(s)-1))
For i=0 To UBound(ns)
Decode=Decode&Chr(CInt(ns(i)) Xor n)
Next
End Function