```
.版本 2
.支持庫 spec
.程序集 窗口程序集_啟動窗口
.程序集變量 DM, 類_大漠
.程序集變量 TS, 類_天使
.程序集變量 句柄數組, 整數型, , "0"
.子程序 __啟動窗口_創建完畢
插件注冊 (取運行目錄 () + “\dm.dll”)
尋找窗口 (“client.exe”)
.子程序 _組合框1_列表項被選擇
.子程序 _按鈕_結束_被單擊
按鈕_開始.禁止 = 假
DM.UnBindWindow () ' 釋放的大漠綁定事件
.子程序 尋找窗口
.參數 參數集_進程名稱, 文本型
.局部變量 進程名數組, 文本型, , "0"
.局部變量 進程ID數組, 整數型, , "0"
.局部變量 i, 整數型
.局部變量 進程數量, 整數型
進程數量 = 進程_枚舉 (進程名數組, 進程ID數組)
.計次循環首 (進程數量, i)
.如果真 (文本_到小寫 (進程名數組 [i]) = 參數集_進程名稱)
加入成員 (句柄數組, 進程_ID取窗口句柄 (進程ID數組 [i]))
.如果真結束
處理事件 ()
.計次循環尾 ()
.如果真 (取數組成員數 (句柄數組) > 0)
.計次循環首 (取數組成員數 (句柄數組), i)
組合框1.加入項目 (“第” + 到文本 (i) + “個窗口:” + 到文本 (句柄數組 [i]), )
.計次循環尾 ()
組合框1.現行選中項 = 0
.如果真結束
.子程序 _按鈕_開始_被單擊
.局部變量 Hwnd, 整數型
.局部變量 大漠_返回值, 整數型
按鈕_開始.禁止 = 真
Hwnd = 句柄數組 [組合框1.現行選中項 + 1]
大漠_返回值 = DM.BindWindow (Hwnd, “gdi”, “windows”, “windows”, 0) ' //綁定窗口
調試輸出 (大漠_返回值) ' 返回1說明沒問題
.子程序 _按鈕_測試_被單擊
DM.MoveTo (512, 17)
程序_延時 (100)
DM.LeftClick ()
```
## 第一步:
## 獲取窗口句柄ID
## 寫一個函數 (尋找窗口)
```
.版本 2
.子程序 尋找窗口
.參數 參數集_進程名稱, 文本型
.局部變量 進程名數組, 文本型, , "0"
.局部變量 進程ID數組, 整數型, , "0"
.局部變量 i, 整數型
.局部變量 進程數量, 整數型
進程數量 = 進程_枚舉 (進程名數組, 進程ID數組)
.計次循環首 (進程數量, i)
.如果真 (文本_到小寫 (進程名數組 [i]) = 參數集_進程名稱)
加入成員 (句柄數組, 進程_ID取窗口句柄 (進程ID數組 [i]))
.如果真結束
處理事件 ()
.計次循環尾 ()
.如果真 (取數組成員數 (句柄數組) > 0)
.計次循環首 (取數組成員數 (句柄數組), i)
組合框1.加入項目 (“第” + 到文本 (i) + “個窗口:” + 到文本 (句柄數組 [i]), )
.計次循環尾 ()
組合框1.現行選中項 = 0
```
## 第二步:啟動窗口尋找游戲進程:
```
.版本 2
.子程序 __啟動窗口_創建完畢
插件注冊 (取運行目錄 () + “\dm.dll”)
尋找窗口 (“client.exe”)
```
## 第三步:按鈕開始啟動大漠并綁定:
```
.版本 2
.支持庫 spec
.子程序 _按鈕_開始_被單擊
.局部變量 Hwnd, 整數型
.局部變量 大漠_返回值, 整數型
按鈕_開始.禁止 = 真
Hwnd = 句柄數組 [組合框1.現行選中項 + 1]
大漠_返回值 = DM.BindWindow (Hwnd, “gdi”, “windows”, “windows”, 0) ' //綁定窗口
調試輸出 (大漠_返回值) ' 返回1說明沒問題
```
## 最后:點擊結束按鈕釋放:
```
.版本 2
.子程序 _按鈕_結束_被單擊
按鈕_開始.禁止 = 假
DM.UnBindWindow () ' 釋放的大漠綁定事件
```