VBS脚本如何实现加密/解密

发布时间:2021-10-12 11:22:02 作者:小新
来源:亿速云 阅读:345

这篇文章主要为大家展示了“VBS脚本如何实现加密/解密”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“VBS脚本如何实现加密/解密”这篇文章吧。

Dim WshSHell,FSO 
On Error Resume Next 
Set WshSHell = WScript.CreateObject("WScript.Shell") 
Set FSO = CreateObject("Scripting.FileSystemObject") 
Set Args = WScript.Arguments 
Ver="1.1" 
CloseTime = 5 
FileName = WScript.ScriptName 
FileFullName = WScript.ScriptFullName 
FilePath = FSO.GetParentFolderName(FileFullName) 
InsPath = FSO.GetSpecialFolder(1) 
InsFullName = FSO.BuildPath(InsPath ,FileName) 
Copyright="废铁" 
QQ="QQ:415736" 
Email="Email:415736@163.com" 
InsTitle="加密/解密VBS脚本(简易免杀版)"&Ver 
InsAnswer="加密/解密VBS脚本(简易免杀版)"&Ver 
RegPath2="HKEY_CLASSES_ROOT\vbsfile\shell\EnCode_VBS\" 
RegValue1="加密/解密VBS脚本"&Ver 
RegForm1="REG_SZ" 
RegPath3="HKEY_CLASSES_ROOT\vbsfile\shell\EnCode_VBS\command\" 
RegValue2="wscript.exe " & chr(34) & InsFullName & chr(34) & " " & chr(34) & "%L" & chr(34) 
RegPath4="HKEY_CLASSES_ROOT\vbsfile\shell\EnCode_VBS\EnCode_Very" 
RegValue3="0" 
RegValue4="1" 
IF FileFullName <> InsFullName then 
intAnswer = MsgBox("【是】将“"+ InsAnswer +"”加入到右键菜单,"&Chr(10)&Chr(10)&"【否】将“ 
"+ InsAnswer +"”从右键菜单删除。 ", vbQuestion + vbYesNoCancel, "安装 - "+ InsTitle +" - "+  
Copyright) 
    If intAnswer = vbYes Then 
WshSHell.RegWrite RegPath2,RegValue1,RegForm1 
WshSHell.RegWrite RegPath3,RegValue2,RegForm1 
WshSHell.RegWrite RegPath4,RegValue4,RegForm1 
FSO.GetFile(FileFullName).Copy(InsFullName) 
WshSHell.popup _ 
"添加脚本文件:"+chr(10)+InsFullName+chr(10)+chr(10)+ _ 
"添加注册表项:"+chr(10)+chr(34)+ RegPath2 +chr(34)+chr(10)+ _ 
chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _ 
chr(10) & "Copyright(C)  " + Copyright +"   " & QQ &"   " + Email _ 
, CloseTime, "安装成功 - "+ InsTitle +" - "+ Copyright, 0 + 64 
end if 
        If intAnswer = vbNo Then 
WshSHell.RegDelete RegPath4 
WshSHell.RegDelete RegPath3 
WshSHell.RegDelete RegPath2 
FSO.DeleteFile InsFullName 
WshSHell.popup _ 
"删除脚本文件:"+chr(10)+InsFullName+chr(10)+chr(10)+ _ 
"删除注册表项:"+chr(10)+chr(34)+ RegPath2 +chr(34)+chr(10)+ _ 
chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _ 
chr(10) & "Copyright(C)  " + Copyright +"   " & QQ &"   " + Email _ 
, CloseTime, "卸载成功 - "+ InsTitle +" - "+ Copyright, 0 + 64 
end if 
ELSE 
Package = WScript.Arguments.Item(0) 
PkgName=FSO.GetBaseName(Package) 
PkgPath=FSO.GetParentFolderName(Package) 
Set ReadFile = FSO.OpenTextFile(Package, 1) 
ReadAllTextFile=ReadFile.ReadAll 
if left(ReadAllTextFile,10)<>"Rem EnCode" then 
EnCodePanDuan="Rem EnCode-Easy By QQ:415736" 
CodeString=ReadAllTextFile 
For i=1 To Len(CodeString) 
TempNum = Asc(Mid(CodeString,i,1)) 
If TempNum = 13 Then 
TempNum = 28 
ElseIf TempNum = 10 Then 
TempNum = 29 
elseif TempNum=34 Then 
TempNum = 18 
elseif TempNum>96 and TempNum<110 then 
TempNum=TempNum+13 
elseif TempNum>109 and TempNum<123 then 
TempNum=TempNum-13 
elseif TempNum>47 and TempNum<53 then 
TempNum=TempNum+5 
elseif TempNum>52 and TempNum<58 then 
TempNum=TempNum-5 
End If 
ThisText = ThisText & chr(TempNum) 
Next 
Call EnCodeFile 
Else 
Call UnCodeFile 
end if 
End if 
Set WshSHell = Nothing 
Set FSO = Nothing 
Set Args = Nothing 
WScript.Quit(0) 
Sub EnCodeFile() 
Set NewFile = FSO.CreateTextFile(FSO.BuildPath(PkgPath ,PkgName&"_Encode.VBS"), True) 
NewFile.WriteLine(EnCodePanDuan) 
NewFile.WriteLine("ExeString="&chr(34)&ThisText&chr(34)) 
NewFile.WriteLine("Execute("&chr(34)&"For i=1 To Len(ExeString)"&chr(34)&"&vbCrLf&"&chr(34) 
&"TempNum = Asc(Mid(ExeString,i,1))"&chr(34)&"&vbCrLf&"&chr(34)&"If TempNum = 28 Then"&chr 
(34)&"&vbCrLf&"&chr(34)&"TempNum = 13"&chr(34)&"&vbCrLf&"&chr(34)&"ElseIf TempNum = 29  
Then"&chr(34)&"&vbCrLf&"&chr(34)&"TempNum = 10"&chr(34)&"&vbCrLf&"&chr(34)&"elseif  
TempNum=18 Then"&chr(34)&"&vbCrLf&"&chr(34)&"TempNum = 34"&chr(34)&"&vbCrLf&"&chr(34) 
&"elseif TempNum>96 and TempNum<110 then"&chr(34)&"&vbCrLf&"&chr(34) 
&"TempNum=TempNum+13"&chr(34)&"&vbCrLf&"&chr(34)&"elseif TempNum>109 and TempNum<123  
then"&chr(34)&"&vbCrLf&"&chr(34)&"TempNum=TempNum-13"&chr(34)&"&vbCrLf&"&chr(34)&"elseif  
TempNum>47 and TempNum<53 then"&chr(34)&"&vbCrLf&"&chr(34)&"TempNum=TempNum+5"&chr(34) 
&"&vbCrLf&"&chr(34)&"elseif TempNum>52 and TempNum<58 then"&chr(34)&"&vbCrLf&"&chr(34) 
&"TempNum=TempNum-5"&chr(34)&"&vbCrLf&"&chr(34)&"End If"&chr(34)&"&vbCrLf&"&chr(34) 
&"ThisText = ThisText & chr(TempNum)"&chr(34)&"&vbCrLf&"&chr(34)&"Next"&chr(34)&")") 
NewFile.WriteLine("Execute(ThisText)") 
NewFile.Close 
WshShell.popup chr(10) &_ 
"加密成功了!保存为文件:"+ chr(10) &chr(10) & _ 
FSO.BuildPath(PkgPath ,PkgName&"_Encode.VBS")+chr(10)+chr(10)+ _ 
chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _ 
chr(10) & "Copyright(C)  " + Copyright +"   " & QQ &"   " + Email _ 
, CloseTime, EnCodePanDuan +" - "+ Copyright, 0 + 64 
End Sub 
Sub UnCodeFile() 
Set ReadFile = FSO.OpenTextFile(Package, 1) 
ReadLineTextFile1=ReadFile.ReadLine 
ReadLineTextFile2=ReadFile.ReadLine 
ReadLineTextFile3=ReadFile.ReadLine 
ReadFile.Close 
Set NewFile = FSO.CreateTextFile(FSO.BuildPath(PkgPath ,PkgName&"_Uncode.VBS"), True) 
NewFile.WriteLine(ReadLineTextFile2) 
NewFile.WriteLine(ReadLineTextFile3) 
NewFile.WriteLine("EnCodePanDuan="&chr(34)&ReadLineTextFile1&chr(34)&vbCrLf&"EnCodePD="&chr 
(34)&"Rem EnCode-Very By QQ:415736"&chr(34)&vbCrLf&"For i=1 To Len 
(ThisText)"&vbCrLf&"TempNum = Asc(Mid(ThisText,i,1))"&vbCrLf&"TempChar = Chr 
(TempNum)"&vbCrLf&"if EnCodePanDuan=EnCodePD then"&vbCrLf&"If TempChar = Chr(58)  
Then"&vbCrLf&"TempChar = Chr(13)"&vbCrLf&"End If"&vbCrLf&"End If"&vbCrLf&"ThisTextTem =  
ThisTextTem & TempChar"&vbCrLf&"Next") 
NewFile.WriteLine("strCode = (ThisTextTem)"&vbCrLf&"Set WshSHell = WScript.CreateObject 
("&chr(34)&"WScript.Shell"&chr(34)&")"&vbCrLf&"Set FSO = CreateObject("&chr(34) 
&"Scripting.filesystemobject"&chr(34)&")"&vbCrLf&"FileName =  
WScript.ScriptName"&vbCrLf&"Set fC = FSO.OpenTextFile(FileName, 2, true)"&vbCrLf&"fC.Write  
strCode"&vbCrLf&"fC.Close"&vbCrLf&"Set WshSHell = Nothing"&vbCrLf&"Set FSO =  
Nothing"&vbCrLf&"WScript.Quit(0)") 
NewFile.Close 
WScript.Sleep 1500 
WshSHell.Run (chr(34)&FSO.BuildPath(PkgPath ,PkgName&"_Uncode.VBS")&chr(34)), vbHide 
WshShell.popup chr(10) &_ 
"解密成功了!保存为文件:"+ chr(10) &chr(10) & _ 
FSO.BuildPath(PkgPath ,PkgName&"_Uncode.VBS")+chr(10)+chr(10)+ _ 
chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _ 
chr(10) & "Copyright(C)  " + Copyright +"   " & QQ &"   " + Email _ 
, CloseTime, "解密成功 - "+ InsTitle +" - "+ Copyright, 0 + 64 
End Sub

以上是“VBS脚本如何实现加密/解密”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. vbs中如何获取Am注册路径信息
  2. vbs中提示没有在该机执行windows脚本宿主的权限怎么解决

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

vbs

上一篇:SoLid如何通过让公民控制自己的数据简化政府流程

下一篇:vbs如何屏蔽键盘按键

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》