當前位置:編程學習大全網 - 源碼下載 - 按鍵精靈多窗口同步

按鍵精靈多窗口同步

多線程操作教程任意單停單啟動壹個窗口[多線程任妳控制]

Call 註冊大漠

Dimenv 環境變量句柄

//環境變量,線程裏面要用到.要定義為環境變量

ID句柄字符串 = ""

//****************************** 檢測按鍵,動作 ***************************************

do

Call Plugin.Msg.Tips("按Insert鍵綁定,按Delete鍵解綁")

Key = WaitKey()

// 等待用戶按任何鍵

// 下面是Insert鍵,綁定鼠標指向的窗口的線程

If Key = 45 Then

環境變量句柄 = dm.GetMousePointWindow()

// 鼠標指向的窗口

// 先判斷,這個句柄是否在綁定.如果綁定過.不再重復綁定這個窗口

位置 = Instr(ID句柄字符串, 環境變量句柄)

//Instr函數,作用是:返回"環境變量句柄"在 "ID句柄字符串"中 第壹次出現的位置。沒出現就是位置=0

// 如果位置=0 就綁定,預防重復綁定

TracePrint 位置

TracePrint ID句柄字符串

If 位置 = 0 Then

//

線程ID=BeginThread(多線程)

// 多線程

// 按壹次Home鍵,就綁定壹個窗口多開

句柄 = CStr(環境變量句柄)

ID = CStr(線程ID)

// CStr函數是把整數轉換成字符串類型

ID句柄字符串 = 句柄 + "|" + ID + "|" + ID句柄字符串

//

Call Plugin.Msg.Tips("已綁定,壹個窗口")

//

Else

Call Plugin.Msg.Tips("窗口已經綁定過了,請不要重復綁定")

Delay 2500

End If

//

//

//########################################################

// 下面是按Delete鍵,停止鼠標指向的窗口的線程

ElseIf Key = 46 Then

鼠標指向的句柄 = dm.GetMousePointWindow()

// TracePrint ID句柄字符串

位置 = Instr(ID句柄字符串, 鼠標指向的句柄)

//Instr函數,作用是:返回"環境變量句柄"在 "ID句柄字符串"中 第壹次出現的位置。沒出現就是位置=0

// 如果位置=0 證明這個窗口當前沒有綁定,預防沒綁定就解綁

TracePrint 位置

TracePrint ID句柄字符串

If 位置 > 0 Then

數組 = Split(ID句柄字符串, 鼠標指向的句柄)

ID = 數組(1)

數組2 = Split(ID, "|")

ID2 = 數組2(1)

// TracePrint ID2

StopThread ID2

// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

// 下面是把停止的線程的ID和句柄,從ID句柄字符串去掉

TracePrint ID句柄字符串

刪除數組 = Split(ID句柄字符串, 鼠標指向的句柄)

左邊 = 刪除數組(0)

ID3= ID2+"|"

刪除數組2 = Split(ID句柄字符串, ID3)

右邊 = 刪除數組2(1)

ID句柄字符串 = 左邊 + 右邊

TracePrint ID句柄字符串

//

// @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Call Plugin.Msg.Tips("已解綁,壹個窗口")

Else

Call Plugin.Msg.Tips("窗口都沒綁定過,妳解綁什麽嗯,想下標越界麽")

Delay 2500

End If

End If

Delay 1500

// 適當延遲,避免連按鍵

Call Plugin.Msg.Tips("")

Loop

//

//

//****************************** 多線程程序 ***************************************

Sub 多線程

set dm = createobject("dm.dmsoft")

//↑創建“壹個對象”

// dm_ret = dm.SetDict(0,"c:\test_game\dm_soft.txt")

//字庫

Call 綁定()

//下面是妳要編寫的程序

Do

dm. KeyPress 81

// 輸入文字Q

//

Delay 1000

Loop

End Sub

//

//

//

//****************************** 註冊大漠 ***************************************

sub 註冊大漠

need_ver = "3.1225B"

PutAttachment "c:\test_game","*.*"

PutAttachment ".\Plugin" ,"RegDll.dll"

Call Plugin.RegDll.Reg("c:\test_game\dm.dll")

set dm = createobject("dm.dmsoft")

ver = dm.Ver()

if ver <> need_ver then

set dm = nothing

set ws=createobject("Wscript.Shell")

ws.run "regsvr32 c:\test_game\dm.dll /s"

set ws=nothing

Delay 1200

set dm = createobject("dm.dmsoft")

ver = dm.Ver()

if ver <> need_ver then

messagebox "插件版本錯誤,當前使用的版本是:"&ver&",插件所在目錄是:"&dm.GetBasePath()

messagebox "請關閉程序,重新打開本程序再嘗試"

endscript

end if

end if

//上面是註冊大漠

// dm_ret = dm.SetDict(0, "c:\test_game\dm_soft.txt")

//字庫

End Sub

Sub 綁定()

hwnd = 環境變量句柄

dm_ret = dm.BindWindow( hwnd, "gdi2", "windows", "windows",0)

//綁定窗口

//

If dm_ret=0 Then

//判斷上面是否獲取到句柄

MessageBox "錯誤;請把鼠標移到遊戲窗口內,再啟動腳本"

End If

// dm.DownCpu 50

dm_ret = dm.SetPath("c:\test_game\")

//設置全局路徑,設置了此路徑後,所有接口調用中,相關的文件都相對於此路徑. 比如圖片,字庫等.< /SPAN >

//設定附件的路徑,以後找圖命令裏面就沒必要添加路徑了

End Sub

Sub OnScriptExit()

dm.UnBindWindow

End Sub

  • 上一篇:app軟件餓了麽裏面訂單的右側自動隱藏和顯示用JS怎麽實現
  • 下一篇:用淘客app推廣收益會更高嗎
  • copyright 2024編程學習大全網