c 實現魔獸 warIII 中顯血和改鍵功能

2021-05-23 19:40:00 字數 352 閱讀 3538

思路:hook+sendmessage,

首先,因為我們要改的鍵war3不是自己寫的程式,所以只能用hook來監控鍵盤的按鍵:

鍵盤hook:

建立全域性hook:

開啟war3,在裡面按了幾下鍵盤,彈出了看,有好幾個對話方塊,說明可以監測到war3裡面的按鍵,

我的思路是向視窗傳送訊息,必須找到獲取視窗的控制代碼才行:

執行,按了下彈出「找到war3了」這樣就獲得了war3視窗的控制代碼了

,剩下就是向視窗傳送按鍵的訊息了:

開啟war3到建立遊戲介面,按了下d,嗯?建立遊戲了,說明訊息傳送成功

這樣就可以將截獲的按鍵來傳送指定訊息來「更改」按鍵了

魔獸顯血功能的實現

今天一是興起,想看看warkey功能的實現。從簡單的顯血開始實現,因為涉及到定時器功能,所以就看了windows程式設計定時器一章,然後查了些資料,實現了顯血的功能。首先是設定定時器 settimer settimer hwnd,id timer,500,null 每半秒產生乙個wm timer訊息...

C 中介面的顯式和隱式實現

介面的實現分為 隱式實現和顯式實現。如果類或者結構要實現的是單個介面,可以使用隱式實現,如果類或者結構繼承了多個介面那麼介面中相同名稱成員就要顯式實現。顯示實現是通過使用介面的完全限定名來實現介面成員的。使用顯式介面成員執行體通常有兩個目的 1 因為顯式介面成員執行體不能通過類的例項進行訪問,這就可...

C 顯式介面實現和隱式介面實現

介面的實現分為 隱式實現和顯式實現。隱式介面實現 如果類或者結構要實現的是單個介面,可以使用隱式實現。顯式介面實現 如果類或者結構繼承了多個介面,那麼介面中相同名稱成員就要顯式實現。顯示實現是通過使用介面的完全限定名來實現介面成員的。使用顯式介面成員執行體通常有兩個目的 1 因為顯式介面成員執行體不...