WH_GETMESSAGE
怎么得到當前的訊息的訊息型別,以及訊息中包含的引數。
如果我要把WM_LBUTTONDOWN截獲并修改成VK_A怎么做。
uj5u.com熱心網友回復:
參考MSDN98中自帶的SPY++源代碼片斷?MSDN98_1.ISO http://pan.baidu.com/s/1dDF41ix, MSDN98_2.ISO http://pan.baidu.com/s/1bnGo0Vl
uj5u.com熱心網友回復:
LRESULT CALLBACK GetMsgProc( int nCode, WPARAM wParam, LPARAM lParam )
{
...
if( WM_LBUTTONDOWN== ((MSG*)lParam)->message)
{
((MSG*)lParam)->message = WM_KEYDOWN;
((MSG*)lParam)->wParam = 0x41 //A key
}
...
return CallNextHookEx(...);
}
uj5u.com熱心網友回復:
謝謝! 但是我還有個問題

第一個是spy++顯示的表單訊息,第一個是我手動按下A鍵顯示的訊息,下面兩個一個是sendmessage發送的訊息,一個是修改后發過去的訊息。 如果是在輸入框三個都能生效,但是如果是程式快捷按鈕則只有自己手動按下的會生效,其他兩個無反應。
請問這是為什么。SPY++里面cRepeat scanfcode以及后面那幾個引數是什么意思在哪改?
uj5u.com熱心網友回復:
VS IDE中,在不明白的符號上點滑鼠右鍵,選轉到定義或查找所有參考。uj5u.com熱心網友回復:
使用鉤子攔截滑鼠訊息,收到滑鼠訊息后,將當前訊息攔截,發送一個VK_A訊息。還要看你是攔截全域的還是攔行程式內部的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/106628.html
標籤:硬件/系統
