- title="WinRaR破译(目前只做了破译数字)"
- set WshShell = CreateObject("WScript.Shell" )
- set fso = CreateObject("scripting.filesystemobject")
- Function input()
- rar_path=InputBox("请输要解密的rar或zip入路径"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"例如:C:\jiemi.rar或C:\jiemi.zip",title)
- If rar_path="" Then Exit Function End If
- If fso.fileExists(rar_path) Then
- num1=InputBox("密码长度最小值"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"例如:0",title)
- If rar_path="" Then Exit Function End If
- num2=InputBox("密码长度最大值"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"注意:比密码最小值要大",title)
- If rar_path="" Then Exit Function End If
- If num2 > num1 Then
- speed=InputBox("请选择解密的速度(建议选3)"&Chr(13)&Chr(10)&"密码范围短则建议选选小于3(默认为3)"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"1:一倍速度"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"2:二倍速度"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"3:三倍速度"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"4:四倍速度"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"5:五倍速度",title)
- code num1,num2,rar_path,speed '重要函数调用
- Else
- msg2=MsgBox ("请注意最大值要大于最小值"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"是否重新输入",1,title)
- If msg2=1 Then input() End If
- End If
- Else
- msg1=MsgBox ("您输入的路径不正确"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"是否重新输入",1,title)
- If msg1=1 Then input() End If
- End If
- End Function
- Function code(num1,num2,rar_path,speed)
- Select Case speed
- Case "1"
- import 1,num1,num2,rar_path
- Case "2"
- import 2,num1,num2,rar_path
- Case "3"
- import 3,num1,num2,rar_path
- Case "4"
- import 4,num1,num2,rar_path
- Case "5"
- import 5,num1,num2,rar_path
- End Select
- End Function
- Function import(number,num1,num2,rar_path)
- On Error Resume Next
- Dim cipher(100),count(100),Result(100)
- pathname=fso.getbasename(rar_path)
- winrar="C:\PROGRA~1\WinRAR\WinRAR.exe"
- For i=1 To number
- If i = 1 Then count(i) = num1 Else count(i) = (Int(num2*(i-1)/number)+1) End If
- Next
- For counter = num1 To Int(num2/number)
- For j=1 To number
- cipher(j)=Array(count(j))
- Result(j)=WshShell.Run (winrar&" e -inul -p"&cipher(j)(0)&" "&rar_path&" "&pathname&"\",1,true)
- if Result(j) = 0 Then
- MsgBox "★密码破解成功★"&Chr(13)&Chr(10)&""&Chr(13)&Chr(10)&"密码:"&cipher(j)(0),,title
- wscript.quit
- end If
- count(j)=count(j)+1
- Next
- Next
- End Function
- input()
复制代码
|