批量QQ号码自动登录
功能:从指定的QQ号码和密码文件中读取信息,分别登录,也就是批量QQ号码自动登录。
操作:
1、把QQ号和密码写在一个叫QQ.ini的文件中,格式为QQ号码|密码,如88480666|12345678,其中|为号码和密码的分隔符。
2、把下面的脚本拷贝放到一个文本文件中,改名了XXX.vbs,XXX你自己任意定。
3、修改你的QQ所在的绝对路径,本例为T:/QQ2009/bin/QQ.exe。
4、双击XXX.vbs,开始自动登录。
说明:如果你有上百个QQ,恐怕开这么多QQ实例你的机器吃不消,就把'Close_Process("QQ.exe")前的'去掉。也就是说,每登录一个退出再登录另一个。
存在的问题:目前登录一个退出一个采用的是结束QQ进程的方法,这样不好,每次都要重新启动QQ实例,浪费时间,如果能注销刚才登录的QQ,再选择另一个号码登录最佳,但本人没有解决这个问题,也没时间。
VBS脚本代码如下:
'Option Explicit
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("QQ.ini",1)
Do Until objTextFile.AtEndOfStream
Dim strNextLine
Dim spIndex,qqnumber,pwd
Dim WshShell, QQPath, QQselect
strNextLine = objTextFile.Readline
spIndex=InStr(strNextLine,"|")
qqnumber=Mid(strNextLine,1,spIndex-1)
pwd=Mid(strNextLine,spIndex+1,Len(strNextLine))
'MsgBox qqnumber&":"&pwd
QQPath="T:/QQ2009/bin/QQ.exe"
Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.Run QQPath
WScript.Sleep 2000
WshShell.AppActivate "Q登录"
WshShell.SendKeys "+{TAB}"
WshShell.SendKeys qqnumber
WScript.Sleep 200
WshShell.SendKeys "{TAB}"
WshShell.SendKeys pwd
WScript.Sleep 200
WshShell.SendKeys "{ENTER}"
WScript.Sleep 5000 '等5秒再换下一个号码登录
'如果QQ太多,机器吃不消,就用这种方法,登录一个,然后下线换另一个
'Close_Process("QQ.exe")
Loop
objTextFile.Close
'下面是关闭某个进程的过程
sub Close_Process(ProcessName)
On Error Resume Next
for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_ '循环进程
'MsgBox ps.name
if Ucase(ps.name)=Ucase(ProcessName) then '关闭QQ,也可以改成其它的程序
ps.terminate
end if
next
end Sub
VBS取QQ或TM自动登录代码并防止关闭的脚本
'Dim QQUIN
Set objWMIService = GetObject _
("winmgmts:\\" & "." & "\root\cimv2")
Set ps = objWMIService.ExecQuery _
("SELECT * FROM Win32_process")
For Each ps in ps '列出系统中所有正在运行的程序
'for each ps in getobject("winmgmts:\\\\.\\root\\cimv2:win32_process").instances_ '列出系统中所有正在运行的程序
If LCase(ps.Name) = "qq.exe" Or LCase(ps.Name) = "tm.exe" Then '检测是否QQ或TM
AppPath = ps.commandline '提取QQ程序的命行
tmp = Replace(AppPath, Chr(34), Space(1))
UIN1 = InStr(tmp, "QQUIN:") + 6
QQUIN = Mid(tmp, UIN1, InStr(UIN1, tmp, Space(1)) - UIN1) '取QQ号码.
End If
Next
If Len(QQUIN) = 0 Then
MsgBox "系统中没有运行QQ或TM程序,请重新启动QQ或TM,登陆后再使用一键换切换一下QQ或TM程序,再运行本脚本"
Else
Do '循环检测
myqqin = chkuin(QQUIN) '检测上面提取出来的QQ号码是否有在本机打开
If Not myqqin Then '如果没有运行则,重新运行QQ程序并登录
runapp(AppPath) '
wscript.sleep 10000 '等待10秒
Else
wscript.sleep 5000 '等待5秒
End If
Loop '返回继续检测
End If
Function RunApp(AppPath)
Dim obj
Set obj = CreateObject("WScript.Shell")
obj.exec(AppPath)
End Function
Function chkuin(QQUIN)
Set objWMIService = GetObject _
("winmgmts:\\" & "." & "\root\cimv2")
Set ps = objWMIService.ExecQuery _
("SELECT * FROM Win32_process")
For Each ps in ps '列出系统中所有正在运行的程序
'for each ps in getobject("winmgmts:\\\\.\\root\\cimv2:win32_process").instances_
If LCase(ps.Name) = "qq.exe" Or LCase(ps.Name) = "tm.exe" Then
AppPatht = ps.commandline
'by chenall qq 368178720
tmp = Replace(AppPatht, Chr(34), Space(1))
UIN1 = InStr(tmp, "QQUIN:") + 6
QQUINTMP = Mid(tmp, UIN1, InStr(UIN1, tmp, Space(1)) - UIN1)
If QQUINTMP = QQUIN Then chkuin = True End If
End If
Next
End Function
VBS脚本实现QQ自动登录的方法(旧)
dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.run "D:\Progra~1\Tencent\QQ.exe"
'QQ路径名,请按照自己QQ的路径修改
WScript.Sleep 1000
WshShell.SendKeys "{TAB}"
WshShell.SendKeys "号码"
WScript.Sleep 1000
WshShell.SendKeys "{TAB}"
WScript.Sleep 1000
WshShell.SendKeys "密码"
WScript.Sleep 1000
WshShell.SendKeys "{ENTER}"
把上面这些复制到记事本中,保存,后缀名为.vbs就可以了.
隐身登陆
隐身登陆你的QQ,PWDHASH值我不会算,只知道VBS-Fans的L0Pk0zxjb6Zn87W/2PjWpg
dim QQ,A,C,OX
C=MSGBOX("请首先把你的QQ密码改为:VBS-Fans" & CHR(13) & "注意大小写然后点确定!" & chr(13) & "因为QQ密码经过MD5,XOR,循环加密所以不提供算法,我也不会!",4097,"密码要求")
if C=1 then
qq=inputbox("请输入你的QQ号码","QQ","767913294")
QQ=trim(qq)
ox=1
else
ox=0
end if
if ox=1 then
set ws=createobject("wscript.shell")
a="cmd /c ""D:\Program Files\Tencent\QQ\QQ.exe"" /START QQUIN:" & QQ & " PWDHASH:L0Pk0zxjb6Zn87W/2PjWpg== /STAT:40 eixt"
ws.run a,0
else
end if
'复制以上代码另存成*.vbs,运行就可以了!