主頁(yè) > 知識(shí)庫(kù) > 用VBScript制作QQ自動(dòng)登錄的腳本代碼

用VBScript制作QQ自動(dòng)登錄的腳本代碼

熱門標(biāo)簽:海外美發(fā)店地圖標(biāo)注 打電話的外呼系統(tǒng)貴不貴 陜西高頻外呼回?fù)芟到y(tǒng)哪家好 百度地圖標(biāo)注怎么卸載 新密防封卡外呼系統(tǒng)違法嗎 辦理膠州400電話財(cái)稅 外呼營(yíng)銷下單系統(tǒng) 前鋒辦理400電話申請(qǐng) 加盟電銷機(jī)器人好的品牌

一直用的是狂人版的QQ,也用它附贈(zèng)的自動(dòng)登錄器很久了,不過最近一版的狂人QQ不知為何取消了自動(dòng)登錄組件。好在QQ2009已經(jīng)能夠同時(shí)記住多個(gè)號(hào)碼的密碼,雖然要多點(diǎn)擊幾下,但依然能夠?qū)崿F(xiàn)免輸入密碼登錄。

  誰(shuí)知最近不知道電腦發(fā)了什么瘋,每隔一段時(shí)間,QQ記住的密碼就會(huì)被清空。我的兩個(gè)QQ號(hào)密碼都設(shè)置得比較復(fù)雜,每次登錄要輸入兩遍密碼實(shí)在是件痛苦的事情,于是決定自制一個(gè)登錄器。

  在網(wǎng)上找了許久,發(fā)現(xiàn)了一個(gè)用VBS制作QQ登錄腳本的辦法:

復(fù)制代碼 代碼如下:

set WshShell = WScript.CreateObject("WScript.Shell")   '創(chuàng)建一個(gè)Shell對(duì)象
WshShell.Run "C:\Progra~1\Tencent\QQ\QQ.exe"      '運(yùn)行QQ,這里改成你自己的QQ目錄
WScript.Sleep 3000                      '休眠 3000毫秒(停止3秒)
WshShell.SendKeys "{tab}"
WScript.Sleep 100
WshShell.SendKeys "xxxxxxxxx"      '這里的xxxx用你的QQ號(hào)碼代替
Wscript.Sleep 100
WshShell.SendKeys "{tab}"
Wscript.Sleep 100
WshShell.SendKeys "********"      '這里的****用你的QQ密碼代替
Wscript.Sleep 1000
WshShell.Sendkeys "{enter}"

  需要注意的是,文件夾的名如果大于8個(gè)字符或者中間有空格,要寫成“PROGRA~1”這種形式,就是保留名字的前6個(gè)字母然后加上“~1”,這個(gè)“~1”代表前6個(gè)字母相同文件夾名字的第一個(gè)文件夾,例如有2個(gè)文件夾中間都有空格:Program Files和Program Filez,那就先以名稱排列圖標(biāo),看最前面的就是~1,第2個(gè)就是~2

  可是把代碼復(fù)制過來(lái)后,卻始終說(shuō)密碼錯(cuò)誤。研究半天,終于明白,原來(lái)是因?yàn)槲业拿艽a中有一些特殊字符,而這些特殊字符在VBS中另有其它含義。然而,要想使用這些特殊字符的本來(lái)意義,網(wǎng)上卻找不到解決的辦法——很多網(wǎng)站都說(shuō)用“\”引導(dǎo)就可以了,例如密碼中如果有“$”字符,就要用“\$”代替。可是我試用之后證明在DOS環(huán)境中這樣不行!

  最后經(jīng)過反復(fù)試驗(yàn),終于把這個(gè)問題解決了。而且,我還添加了一個(gè)判斷過程。也就是如果把這個(gè)腳本放在開始-->所有程序-->啟動(dòng)里面,打算在開機(jī)的時(shí)候自動(dòng)運(yùn)行的話,那就可以通過點(diǎn)擊確定或者取消來(lái)啟動(dòng)或者跳過QQ自動(dòng)登錄。代碼如下:

復(fù)制代碼 代碼如下:

set WshShell = WScript.CreateObject("WScript.Shell")
Dim a
a = MsgBox("自動(dòng)登錄QQ嗎?",65,"QQ自動(dòng)登錄")
If a=1 Then
WshShell.Run "D:\Progra~1\Tencent\QQ2009\Bin\QQ.exe"
WScript.Sleep 11000
WshShell.SendKeys "+{tab}"
WScript.Sleep 300
WshShell.SendKeys "xxxxxxx{tab}"
Wscript.Sleep 300
WshShell.SendKeys "****************{tab}"
Wscript.Sleep 300
WshShell.SendKeys "{down 7}{enter}"
Wscript.Sleep 300
WshShell.SendKeys "{tab 4}{enter}"

Wscript.Sleep 15000

WshShell.Run "D:\Progra~1\Tencent\QQ2009\Bin\QQ.exe"
WScript.Sleep 2000
WshShell.SendKeys "+{tab}"
WScript.Sleep 300
WshShell.SendKeys "xxxxxxxxx{tab}"
Wscript.Sleep 300
WshShell.SendKeys "****************{tab}"
Wscript.Sleep 300
WshShell.SendKeys "{down 7}{enter}"
Wscript.Sleep 300
WshShell.SendKeys "{tab 4}{enter}"
End If

注釋:
  如果你不希望出現(xiàn)提示對(duì)話框,只要把第2、3、4行和最后一行刪除掉即可。

  第5行,我的QQ啟動(dòng)目錄在D:\Program Files\Tencent中。

  第6行,由于剛開機(jī)時(shí)可能同時(shí)要加載許多程序,QQ的啟動(dòng)過程可能比較慢,需要等待11秒鐘確保登錄界面出現(xiàn)。而且我發(fā)現(xiàn),狂人版的QQ在啟動(dòng)過程中很容易受到干擾而失去當(dāng)前登錄窗口,所以這里的等待時(shí)間應(yīng)盡可能足夠長(zhǎng)以確保自動(dòng)登錄時(shí)沒有其它程序搶走當(dāng)前窗口。

  第7行,狂人版QQ啟動(dòng)后,除非是第一次運(yùn)行QQ,否則光標(biāo)位置并不在輸入號(hào)碼的地方,而是輸入密碼的地方,所以需要發(fā)送Shift+Tab組合鍵使得光標(biāo)出現(xiàn)在輸入號(hào)碼的框中。
  對(duì)于需要與Shift、Ctrl、Alt三個(gè)控制鍵組合的按鍵,SendKeys使用特殊字符來(lái)表示:+、^、%,另外對(duì)于一些不會(huì)生成字符的控制功能按鍵,則需要使用大括號(hào)括起來(lái)按鍵的名稱。下面是這些按鍵和表示法的對(duì)照:
  按鍵                代碼   
  BACKSPACE     {BACKSPACE}, {BS}, 或 {BKSP}   
  BREAK       {BREAK}   
  CAPS LOCK     {CAPSLOCK}   
  DEL or Delete   {Delete} 或 {DEL}   
  DOWN ARROW     {DOWN}   
  END        {END}   
  ENTER       {ENTER}或 ~   
  ESC        {ESC}   
  HELP        {HELP}   
  HOME        {HOME}   
  INS or Insert   {Insert} 或 {INS}   
  LEFT ARROW     {LEFT}   
  NUM LOCK      {NUMLOCK}   
  PAGE DOWN     {PGDN}   
  PAGE UP      {PGUP}   
  PRINT SCREEN    {PRTSC}   
  RIGHT ARROW    {RIGHT}   
  SCROLL LOCK    {SCROLLLOCK}   
  TAB        {TAB}   
  UP ARROW      {UP}   
  F1         {F1}   
  ……
  F10         {F10}

  第8行,光標(biāo)發(fā)生位置變動(dòng),所以延時(shí)0.3秒,確保光標(biāo)成功轉(zhuǎn)移。以下同。

  第9行,輸入完號(hào)碼后還需要按一下Tab鍵使得光標(biāo)跳轉(zhuǎn)到密碼輸入框中。這里我考慮到數(shù)字鍵和Tab鍵的點(diǎn)擊都是在同一個(gè)框內(nèi),所以直接放在了一起,節(jié)約時(shí)間。

  第11行,輸入密碼。注意,如果你的密碼中有“$”、“(”、“)”、“*”、“+”、“_”、“[”、“?”、“\”、“^”、“{”或者“|”符號(hào),就必須用{ }框起來(lái),例如有“[”,就得寫成“{[}”;如果有“{”,就得寫成“{{}”;如果密碼是“a*2+3”,就得寫成“a{*}2{+}3”。其余類推。
  注意最后的{Tab},如果你只有一個(gè)QQ號(hào),而且每次都是正常方式登錄,那么你可以將{Tab}改成{Enter},然后刪除后面的行就行了。

  第13行,由于我每次都希望能以隱身方式登錄,所以在這里添加了按向下鍵選取隱身模式的過程,選中隱身模式后需要發(fā)送回車鍵才能選中。如果需要發(fā)送多個(gè)重復(fù)的單字母按鍵,不必重復(fù)輸入該字母,SendKeys允許使用簡(jiǎn)化格式進(jìn)行描述,使用格式為“{按鍵 數(shù)字}”。例如要發(fā)送10個(gè)字母“x”,則輸入“WshShell.SendKeys "{x 10}"”即可,所以這里我用了7個(gè)向下鍵。

  第15行,這里的4個(gè)Tab是用于將鼠標(biāo)點(diǎn)擊焦點(diǎn)移動(dòng)到登錄窗口中的“登錄”按鈕上,最后發(fā)送回車開始登錄過程。

  第17行,我需要登錄兩個(gè)QQ號(hào),所以在這里需要等待至少15秒,確保第一個(gè)號(hào)碼完全登錄。如果你的第一個(gè)QQ號(hào)還沒有登錄完畢就出現(xiàn)了第二個(gè)登錄窗口,那第二個(gè)QQ登錄一定會(huì)失敗,需要增大這里的數(shù)值。

  后面的過程就和前面的一樣了,不再贅述。編輯好這段代碼之后,新建一個(gè)文本文件,將代碼復(fù)制進(jìn)去,然后將文件改名為AutoQQ.VBS,雙擊就可以看到效果了。

補(bǔ)充說(shuō)明:

1)雙擊運(yùn)行vbs文件后,不能點(diǎn)擊鼠標(biāo),也不能敲擊鍵盤,必須等到QQ號(hào)啟動(dòng)結(jié)束才能做其它事情,否則登錄過程很可能會(huì)失敗。

2)運(yùn)行此腳本時(shí)不能有其它搶占最頂端窗口的程序,例如QQ記牌器之類,否則WScript會(huì)把字符發(fā)送到錯(cuò)誤的窗口中;也不要設(shè)置收到QQ消息就自動(dòng)彈出窗口,否則后續(xù)QQ號(hào)登錄很可能會(huì)被干擾。

3)這種方法自動(dòng)登錄QQ,密碼是明文形式存放在vbs文件中的,所以只適用于私人電腦,如果多人使用同一電腦就不安全了。也許你可以去網(wǎng)上找一個(gè)叫做“VBS2EXE”的軟件來(lái)把腳本文件轉(zhuǎn)換成exe文件,但是我試驗(yàn)了多次,這個(gè)軟件沒法在我的機(jī)器上運(yùn)行。

(本人原創(chuàng)作品,轉(zhuǎn)載請(qǐng)注明出自玄鳥翩翩)

您可能感興趣的文章:
  • js如何調(diào)用qq互聯(lián)api實(shí)現(xiàn)第三方登錄
  • python登錄QQ郵箱發(fā)信的實(shí)現(xiàn)代碼
  • 高仿Windows Phone QQ登錄界面實(shí)例代碼
  • ASP.NET實(shí)現(xiàn)QQ、微信、新浪微博OAuth2.0授權(quán)登錄
  • Android調(diào)用第三方QQ登錄代碼分享
  • Yii2中OAuth擴(kuò)展及QQ互聯(lián)登錄實(shí)現(xiàn)方法
  • jquery仿QQ登錄賬號(hào)選擇下拉框效果
  • Python腳本簡(jiǎn)單實(shí)現(xiàn)打開默認(rèn)瀏覽器登錄人人和打開QQ的方法
  • Python的Flask框架應(yīng)用程序?qū)崿F(xiàn)使用QQ賬號(hào)登錄的方法
  • Android QQ登錄界面繪制代碼

標(biāo)簽:四平 伊春 咸陽(yáng) 牡丹江 武威 梅州 阜陽(yáng) 河南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《用VBScript制作QQ自動(dòng)登錄的腳本代碼》,本文關(guān)鍵詞  用,VBScript,制作,自動(dòng),登錄,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《用VBScript制作QQ自動(dòng)登錄的腳本代碼》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于用VBScript制作QQ自動(dòng)登錄的腳本代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章