html5中文学习网

您的位置: 首页 > 网站及特效实例 > jquery特效 » 正文

VBS 加解密 For MS Script Encode_编程语言综合

[ ] 已经帮助:人解决问题
这篇文章主要介绍了微软自己的代码加解密实现方法,需要的朋友可以参考下
 

一、加密nTJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
nTJHTML5中文学习网 - HTML5先行者学习网
Dim ObjectFSO

If (lcase(right(wscript.fullname,11))="wscript.exe") ThennTJHTML5中文学习网 - HTML5先行者学习网
 WScript.Quit(0)nTJHTML5中文学习网 - HTML5先行者学习网
End IfnTJHTML5中文学习网 - HTML5先行者学习网

If wscript.arguments.count<2 ThennTJHTML5中文学习网 - HTML5先行者学习网
 Wscript.Echo "VBS Code Encoder v1.0 Powered by ENUN. http://www.enun.net/"nTJHTML5中文学习网 - HTML5先行者学习网
 Wscript.Echo "Notes: dFileName Must be '*.vbe'!"nTJHTML5中文学习网 - HTML5先行者学习网
 Wscript.Echo "Usage: cscript.exe //nologo sFileName dFileName"nTJHTML5中文学习网 - HTML5先行者学习网
 Wscript.Echo "   eg: cscript.exe //nologo test.vbs enc.vbe"nTJHTML5中文学习网 - HTML5先行者学习网
 WScript.Quit(0)nTJHTML5中文学习网 - HTML5先行者学习网
End IfnTJHTML5中文学习网 - HTML5先行者学习网

sFileName = Wscript.Arguments(0)nTJHTML5中文学习网 - HTML5先行者学习网
dFileName = Wscript.Arguments(1)nTJHTML5中文学习网 - HTML5先行者学习网

Set ObjectFSO = CreateObject("Scripting.FileSystemObject")nTJHTML5中文学习网 - HTML5先行者学习网
Set ReadData = ObjectFSO.OpenTextFile(sFileName, 1)nTJHTML5中文学习网 - HTML5先行者学习网

ObjectFSO.OpenTextFile(dFileName, 8, true).Write(Encoder(ReadData.Readall))nTJHTML5中文学习网 - HTML5先行者学习网

Function Encoder(data)nTJHTML5中文学习网 - HTML5先行者学习网
    Encoder = CreateObject("Scripting.Encoder").EncodeScriptFile(".vbs", data, 0, "VBScript")nTJHTML5中文学习网 - HTML5先行者学习网
End FunctionnTJHTML5中文学习网 - HTML5先行者学习网

二、解密nTJHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
nTJHTML5中文学习网 - HTML5先行者学习网
option explicitnTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
Dim oArgs, NomFichiernTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
'Optional argument : the encoded filenamenTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
NomFichier=""nTJHTML5中文学习网 - HTML5先行者学习网
Set oArgs = WScript.ArgumentsnTJHTML5中文学习网 - HTML5先行者学习网
Select Case oArgs.CountnTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
Case 0 'No Arg, popup a dialog box to choose the filenTJHTML5中文学习网 - HTML5先行者学习网
        NomFichier=BrowseForFolder("Choose an encoded file", &H4031, &H0011)nTJHTML5中文学习网 - HTML5先行者学习网
Case 1nTJHTML5中文学习网 - HTML5先行者学习网
        If Instr(oArgs(0),"?")=0 Then '-? ou /? => aidenTJHTML5中文学习网 - HTML5先行者学习网
                NomFichier=oArgs(0)nTJHTML5中文学习网 - HTML5先行者学习网
        End IfnTJHTML5中文学习网 - HTML5先行者学习网
Case ElsenTJHTML5中文学习网 - HTML5先行者学习网
        WScript.Echo "Too many parameters"nTJHTML5中文学习网 - HTML5先行者学习网
End Select

Set oArgs = NothingnTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
If NomFichier<>"" ThennTJHTML5中文学习网 - HTML5先行者学习网
        Dim fsonTJHTML5中文学习网 - HTML5先行者学习网
        Set fso=WScript.CreateObject("Scripting.FileSystemObject")nTJHTML5中文学习网 - HTML5先行者学习网
        If fso.FileExists(NomFichier) ThennTJHTML5中文学习网 - HTML5先行者学习网
                Dim fic,contenunTJHTML5中文学习网 - HTML5先行者学习网
                Set fic = fso.OpenTextFile(NomFichier, 1)nTJHTML5中文学习网 - HTML5先行者学习网
                Contenu=fic.readAllnTJHTML5中文学习网 - HTML5先行者学习网
                fic.closenTJHTML5中文学习网 - HTML5先行者学习网
                Set fic=NothingnTJHTML5中文学习网 - HTML5先行者学习网
                Const TagInit="#@~^" '#@~^awQAAA==nTJHTML5中文学习网 - HTML5先行者学习网
                Const TagFin="==^#~@" '& chr(0)nTJHTML5中文学习网 - HTML5先行者学习网
                Dim DebutCode, FinCodenTJHTML5中文学习网 - HTML5先行者学习网
                DonTJHTML5中文学习网 - HTML5先行者学习网
     FinCode=0nTJHTML5中文学习网 - HTML5先行者学习网
     DebutCode=Instr(Contenu,TagInit)nTJHTML5中文学习网 - HTML5先行者学习网
     If DebutCode>0 ThennTJHTML5中文学习网 - HTML5先行者学习网
      If (Instr(DebutCode,Contenu,"==")-DebutCode)=10 Then 'If "==" follows the tagnTJHTML5中文学习网 - HTML5先行者学习网
       FinCode=Instr(DebutCode,Contenu,TagFin)nTJHTML5中文学习网 - HTML5先行者学习网
       If FinCode>0 ThennTJHTML5中文学习网 - HTML5先行者学习网
        Contenu=Left(Contenu,DebutCode-1) & _nTJHTML5中文学习网 - HTML5先行者学习网
        Decode(Mid(Contenu,DebutCode+12,FinCode-DebutCode-12-6)) & _nTJHTML5中文学习网 - HTML5先行者学习网
        Mid(Contenu,FinCode+6)nTJHTML5中文学习网 - HTML5先行者学习网
       End IfnTJHTML5中文学习网 - HTML5先行者学习网
      End IfnTJHTML5中文学习网 - HTML5先行者学习网
     End IfnTJHTML5中文学习网 - HTML5先行者学习网
                Loop Until FinCode=0nTJHTML5中文学习网 - HTML5先行者学习网
                WScript.Echo ContenunTJHTML5中文学习网 - HTML5先行者学习网
        ElsenTJHTML5中文学习网 - HTML5先行者学习网
                WScript.Echo Nomfichier & " not found"nTJHTML5中文学习网 - HTML5先行者学习网
        End IfnTJHTML5中文学习网 - HTML5先行者学习网
        Set fso=NothingnTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
ElsenTJHTML5中文学习网 - HTML5先行者学习网
        WScript.Echo "Please give a filename"nTJHTML5中文学习网 - HTML5先行者学习网
        WScript.Echo "Usage : " & wscript.fullname  & " " & WScript.ScriptFullName & " <filename>"nTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
End IfnTJHTML5中文学习网 - HTML5先行者学习网
 nTJHTML5中文学习网 - HTML5先行者学习网

Function Decode(Chaine)nTJHTML5中文学习网 - HTML5先行者学习网
        Dim se,i,c,j,index,ChaineTempnTJHTML5中文学习网 - HTML5先行者学习网
        Dim tDecode(127)nTJHTML5中文学习网 - HTML5先行者学习网
        Const Combinaison="1231232332321323132311233213233211323231311231321323112331123132"nTJHTML5中文学习网 - HTML5先行者学习网
        Set se=WSCript.CreateObject("Scripting.Encoder")nTJHTML5中文学习网 - HTML5先行者学习网
        For i=9 to 127nTJHTML5中文学习网 - HTML5先行者学习网
                tDecode(i)="JLA"nTJHTML5中文学习网 - HTML5先行者学习网
        NextnTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
        For i=9 to 127nTJHTML5中文学习网 - HTML5先行者学习网
                ChaineTemp=Mid(se.EncodeScriptFile(".vbs",string(3,i),0,""),13,3)nTJHTML5中文学习网 - HTML5先行者学习网
                For j=1 to 3nTJHTML5中文学习网 - HTML5先行者学习网
                        c=Asc(Mid(ChaineTemp,j,1))nTJHTML5中文学习网 - HTML5先行者学习网
                        tDecode(c)=Left(tDecode(c),j-1) & chr(i) & Mid(tDecode(c),j+1)nTJHTML5中文学习网 - HTML5先行者学习网
                NextnTJHTML5中文学习网 - HTML5先行者学习网
        NextnTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
        'Next line we correct a bug, otherwise a ")" could be decoded to a ">"nTJHTML5中文学习网 - HTML5先行者学习网
        tDecode(42)=Left(tDecode(42),1) & ")" & Right(tDecode(42),1)nTJHTML5中文学习网 - HTML5先行者学习网
        Set se=NothingnTJHTML5中文学习网 - HTML5先行者学习网
        Chaine=Replace(Replace(Chaine,"@&",chr(10)),"@#",chr(13))nTJHTML5中文学习网 - HTML5先行者学习网
        Chaine=Replace(Replace(Chaine,"@*",">"),"@!","<")nTJHTML5中文学习网 - HTML5先行者学习网
        Chaine=Replace(Chaine,"@$","@")nTJHTML5中文学习网 - HTML5先行者学习网
        index=-1nTJHTML5中文学习网 - HTML5先行者学习网
        For i=1 to Len(Chaine)nTJHTML5中文学习网 - HTML5先行者学习网
                c=asc(Mid(Chaine,i,1))nTJHTML5中文学习网 - HTML5先行者学习网
                If c<128 Then index=index+1nTJHTML5中文学习网 - HTML5先行者学习网
                If (c=9) or ((c>31) and (c<128)) ThennTJHTML5中文学习网 - HTML5先行者学习网
                        If (c<>60) and (c<>62) and (c<>64) ThennTJHTML5中文学习网 - HTML5先行者学习网
                                Chaine=Left(Chaine,i-1) & Mid(tDecode(c),Mid(Combinaison,(index mod 64)+1,1),1) & Mid(Chaine,i+1)nTJHTML5中文学习网 - HTML5先行者学习网
                        End IfnTJHTML5中文学习网 - HTML5先行者学习网
                End IfnTJHTML5中文学习网 - HTML5先行者学习网
        NextnTJHTML5中文学习网 - HTML5先行者学习网
        Decode=ChainenTJHTML5中文学习网 - HTML5先行者学习网
End FunctionnTJHTML5中文学习网 - HTML5先行者学习网
 nTJHTML5中文学习网 - HTML5先行者学习网

Function BrowseForFolder(ByVal pstrPrompt, ByVal pintBrowseType, ByVal pintLocation)nTJHTML5中文学习网 - HTML5先行者学习网
        Dim ShellObject, pstrTempFolder, xnTJHTML5中文学习网 - HTML5先行者学习网
        Set ShellObject=WScript.CreateObject("Shell.Application")nTJHTML5中文学习网 - HTML5先行者学习网
        On Error Resume NextnTJHTML5中文学习网 - HTML5先行者学习网
        Set pstrTempFolder=ShellObject.BrowseForFolder(&H0,pstrPrompt,pintBrowseType,pintLocation)nTJHTML5中文学习网 - HTML5先行者学习网
        BrowseForFolder=pstrTempFolder.ParentFolder.ParseName(pstrTempFolder.Title).PathnTJHTML5中文学习网 - HTML5先行者学习网
        If Err.Number<>0 Then BrowseForFolder=""nTJHTML5中文学习网 - HTML5先行者学习网
        Set pstrTempFolder=NothingnTJHTML5中文学习网 - HTML5先行者学习网
        Set ShellObject=NothingnTJHTML5中文学习网 - HTML5先行者学习网
End FunctionnTJHTML5中文学习网 - HTML5先行者学习网

nTJHTML5中文学习网 - HTML5先行者学习网
nTJHTML5中文学习网 - HTML5先行者学习网
原文: http://www.enun.net/?p=866nTJHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助