自从qq出现了等级制度之后,现在有不少人都开始了疯狂挂级,希望在联机状态下始终运行qq,即便被人关闭也能自动启动登录,而且还要防止因异常错误而退出。其实这些事情我们可以使用两个vbs脚本来实现这一目的。
1.qq自动登录脚本 set fso = wscript.createobject("scripting.filesystemobject") set f = fso.createtextfile("qq自动登录.bat",true) f.writeline "@echo off" & vbcrlf 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 qqcmd=ps.commandline \’提取qq程序的命行 tmp=replace(qqcmd,chr(34),space(1)) uin1=instr(tmp,"qquin:")+6 if not len(uin1)=0 then qquin=mid(tmp,uin1,instr(uin1,tmp,space(1))-uin1) \’取qq号码. qq=qq+1 qqnum=qqnum & "qq号码" & qq & ":" & vbtab & qquin & vbcrlf f.writeline "echo qq号码:" & qquin f.writeline "echo 命令行:" & qqcmd f.writeline qqcmd & vbcrlf end if end if next if not len(qq)=0 then msgbox "已经成功提取以下qq号码的自动登录命令行" & vbcrlf & vbcrlf & qqnum & vbcrlf & "具体请查看当前目录下的<qq自动登录.bat>文件",0,"qq自动 登录命令提取脚本 by chenall qq:xxxxxx" else msgbox "提取qq自动登录命令失败,请查看qq或tm是否正在运行.",0,"qq自动登录命令提取脚本 by chenall qq:xxxxxx" f.close set f = fso.getfile("qq自动登录.bat") f.delete end if 将这些代码存储为"*.vbs"文件。然后将所有需要自动登录的qq号码全部登录,再在一个qq上点击"菜单"→"一键切换到tm"。此后运行该vbs脚本,会发现在当前目录下生成了一个"qq自动登陆.bat"的文件,运行该文件即可自动登录所有qq号码。 小提示:代码中的"xxxxxx"代表你的qq号。
2.qq防止关闭脚本 dim qquin 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) 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,一键切换到tm,再运行vbs脚本。此后,即使关闭了tm/qq,它也会自动启动并登录至网络。经笔者在windows xp sp2系统上测试,完全有效。 |