能真正后臺運行的按鍵精靈代碼支持最小化和切換窗口_第1頁
能真正后臺運行的按鍵精靈代碼支持最小化和切換窗口_第2頁
能真正后臺運行的按鍵精靈代碼支持最小化和切換窗口_第3頁
能真正后臺運行的按鍵精靈代碼支持最小化和切換窗口_第4頁
能真正后臺運行的按鍵精靈代碼支持最小化和切換窗口_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、能真正后臺運行的按鍵精靈代碼支持最小化和切換窗口能真正后臺運行的按鍵精靈代碼是附 2 ,詳細應用是附 3 均可直接復制使用主題:按鍵精靈 切換窗口 最小化 后臺運行 游戲1 、游戲句柄 后臺的意思就是當窗口被遮蓋或移開的時候,仍能夠正常的執(zhí)行腳本動作,所以必須先找到該游戲的窗口 句柄,這樣可以保證我們編輯的腳本語句有正確的使用方向,獲取窗口句柄的方法有很多,我一般使用以下的方法:Dim hwndPlugin hwnd=Window.MousePoint()Plugin 是調(diào)用插件命令,凡是調(diào)用插件都需要使用這個命令, hwnd 就是得到的句柄, Window 是插件的名 稱 MousePoin

2、t() 返回鼠標所在的窗口的句柄 關于窗口這里需要多說幾句,以網(wǎng)頁游戲為例,鼠標放在標題欄上和放在游戲窗口所得到的句柄是不一樣 的,游戲窗口是 IE 的一個子窗口,因此在運行腳本前,將你的鼠標放在游戲窗口的區(qū)域內(nèi)再運行腳本。 得到句柄費函數(shù)很多,有興趣的自己去試試看,不過知道一個就足夠了。2、模擬動作得到窗口句柄后,你就可以向這個窗口模擬需要的動作了,在這里要用到按鍵精靈 7 的插件(既然已經(jīng)有7 了以前的插件就不作介紹了),模擬動作的函數(shù)有如下幾個-模擬鼠標點擊Plugin Bkgnd.LeftClick( 句柄 ,橫坐標 ,縱坐標 ) /模擬鼠標左鍵點擊Plugin Bkgnd.Right

3、Click( 句柄 ,橫坐標 , 縱坐標 ) /模擬鼠標右鍵點擊其中的句柄就是上面我們已經(jīng)得到的句柄,這里的橫坐標和縱坐標是針對游戲窗口,而不是針對屏幕的(看暈了吧關于這一點足足困擾了我一個禮拜的時間才弄明白 )。屏幕坐標,是以屏幕左上角為基點( 0,0),右下角的坐標是和屏幕分辨率有關的,而窗口坐標,不是在 屏幕的左上角,例如 word 中的編輯窗口的 0,0 位置是在工具欄下面的,看不懂也沒關系,你只要記住下面的方法就行了,首先在得到窗 口句柄后加上如下的代碼:Plugin s = Window.GetClientRect(hwnd)XYArray = Split(s, "|&q

4、uot;, -1, 1)dx = XYArray(0)dy = XYarray(1)其次,在橫坐標和縱坐標的后面都分別減去 dx 和 dy 就行了,為什么!不用去管他,反正這樣做不會錯,舉例說明例如你抓點得到的橫坐標是X,縱坐標是y,那么模擬鼠標左鍵點擊的語句應該是這樣的:Plugin Bkgnd.LeftClick( 句柄 x-dx,y-dy)-模擬鍵盤動作Plugin Bkgnd.KeyPress( 句柄,按鍵碼 ) /模擬鍵盤動作 這里的按鍵碼可以很容易的在按鍵精靈中查到,包括組合鍵 -輸入字符串Plugin Window.SendString(句柄,字符串 )這個函數(shù)在登陸和喊話時是非

5、常有用的,其中的字符串可以是字符串變量3 、后臺找色后臺腳本盡量少用找色語句,否則你的游戲?qū)?“卡巴死機 ”,即使少用也會出現(xiàn)很多的 “馬賽克 ”幸運的是不影 響找色功能,即使游戲圖像已經(jīng)亂七八糟,既然是要后臺操作,難看就難看吧a_a。Plugin c1=BkgndColor.GetPiXelColor(hwnd,631-dX,121-dy) 強烈建議用這個函數(shù),至于什么區(qū)域找色,區(qū)域照圖之類,如果你的電腦速度足夠快再去嘗試吧。 找色是有技巧的,一定要找到一個不同畫面分別對應不同顏色的點,當然只有一個點是不可靠的。我的思 路是,找到幾個點的顏色值記錄下來,再根據(jù)這幾個點的不同組合來決定腳本的走

6、向,采取這種方法后,我在游戲時已經(jīng)基本可以看到大 體的畫面了。附1Delay 3000Hwnd = Plugin.Window.MousePoint()Rem aCall Plugin.Bkgnd.KeyPress(Hwnd, 50)Delay 5000Goto a附 2 :另一個(試了可行,可直接復制應用)SetSimMode 1UserVar yanshi=1000隔多久按一次下面這句是得到鼠標指向的窗口句柄Plugin Hwnd = Window.MousePoint()Rem sPlugin Bkgnd.KeyPress(Hwnd, 49)Delay yanshiPlugin Bkgn

7、d.KeyPress(Hwnd, 50)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 51)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 52)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 53)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 54)Delay yanshiGoto s附3,基于附2自己弄的一個后臺運行代碼,其中UserVar yanshi=200是后面用這句代碼的地方"隔多久按一次",也可直接用時間代替此句無關緊要.Rem

8、s至Goto s期間的代碼為找到窗口句柄后的要運行的代碼,我們想要的鼠標按鍵 操作都在這期間內(nèi).Delay 300延時多少時間,好象是1秒=10000還是多少,在按鍵精靈里一看就曉得.For 3至EndFor期間為循環(huán)執(zhí)行的命令,可以直接在控制命令里面插入,也可手下' (代碼192 ),再依次按下1 (代碼49), 2, 3,中間間隔時間為 yanshi (前面設定為 200 ,也可直接錄入 200),按下空格鍵,循環(huán)三 遍后,再按下 8 ,然后按上面辦法分別按下4,5,6 循環(huán)三遍后再按下 7,最后結束注意在設置的最右面設置循環(huán)次數(shù)為按中止鍵才中止, 以下代碼直接復制后即可使用要按其

9、他的鍵盤參照改動即可可在記事本中看一下調(diào)試的具體結果(從SetSimMode 1 開始復制至結束)SetSimMode 1UserVar yanshi=200 隔多久按一次 /下面這句是得到鼠標指向的窗口句柄 Plugin Hwnd = Window.MousePoint()Rem sDelay 300For 3Plugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 49)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 50)Delay yanshiPlugin Bkgnd.KeyPress(Hwn

10、d, 51)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 52)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 53)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 54)Delay yanshiEndForPlugin Bkgnd.KeyPress(Hwnd, 104)Delay 300For 3Plugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 49)Delay

11、yanshiPlugin Bkgnd.KeyPress(Hwnd, 50)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 51)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 192)Plugin Bkgnd.KeyPress(Hwnd, 52)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 53)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 54)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd, 32)EndForPlugin Bkg

12、nd.KeyPress(Hwnd, 103)Goto s附四:補充一個練習,試了 N次均能正常運行的后臺操作源代碼.權當實驗練習用.能后臺運行的仙域釣魚腳本自編源代碼.說明:單擊指點坐標,7秒后,按0 次,再按四次,在單擊另一指定坐標,在彈出的對話框指定坐標處單擊.再對另外三處不同的坐標點做相同操作SetSimMode 1模擬方式1為硬件模擬,2為越級模擬0為普通模擬Dim hwndUserVar yanshi=300/間隔時間 ,也可設置如紅藍低于某個數(shù)時自動運行動作Plugin Hwnd = Window.MousePoint()/上面這句是得到鼠標指向的窗口句柄Rem aaa/標記任意點

13、 aaa, 或者說起始點 ,到標記 goto 處結束/下面幾句是得到目標點的相對坐標Plugin s = Window.GetClientRect(hwnd)XYArray = Split(s, "|", -1, 1)dx = XYArray(0)dy = XYarray(1)/上面四句代碼得到目標坐標的相對坐標的dx 和 dy 值Plugin Bkgnd.LeftClick(hwnd,500-dx,300-dy)/在坐標 (500,300) 單擊左鍵Delay 7000Plugin Bkgnd.KeyPress(Hwnd,96)/按一下 0 鍵Delay yanshiPl

14、ugin Bkgnd.KeyPress(Hwnd,219)/按一下 鍵Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,670-dx,170-dy)/在坐標 (670,170) 單擊左鍵Delay yanshi/在坐標 (350,510) 單擊左鍵Delay yanshiDelay 3000/上面是第一個號 ,

15、后面幾個號同理操作 ,不再重復解說Plugin Bkgnd.LeftClick(hwnd,500-dx,400-dy)/在坐標 (500,400) 單擊左鍵Delay 3000Plugin Bkgnd.KeyPress(Hwnd,96)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yans

16、hiPlugin Bkgnd.LeftClick(hwnd,670-dx,170-dy)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,350-dx,510-dy)Delay yanshiDelay 3000/上面是第二個號Plugin Bkgnd.LeftClick(hwnd,500-dx,500-dy)/在坐標 (500,500) 單擊左鍵Delay 3000Plugin Bkgnd.KeyPress(Hwnd,96)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.Key

17、Press(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.KeyPress(Hwnd,219)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,670-dx,170-dy)Delay yanshiPlugin Bkgnd.LeftClick(hwnd,350-dx,510-dy)Delay yanshiDelay 3000/上面是第三個號Plugin Bkgnd.LeftClick(hwnd,500-dx,600-dy)/在坐標 (500,600) 單擊左鍵Delay 3000Plugin Bkgnd.KeyPress(Hwnd,96)Delay yanshiPlugin Bkgnd.KeyP

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論