2
如何讓我的mousehook從一個單獨的線程回調,以避免它干擾我的主線程,並導致mouselag?如何讓我的鼠標從單獨的線程回調? C++
HHOOK Mousehook;
int trial=0; //paintflag for testing
LRESULT CALLBACK HookCallback(int nCode, WPARAM wParam, LPARAM lParam)
{
switch (wParam)
{
case WM_LBUTTONDOWN:
trial = 1; //set paintflag
InvalidateRect(hWnd, NULL, TRUE);
break;
case WM_RBUTTONDOWN:
PostQuitMessage(0);
break;
default:
break;
}
return CallNextHookEx(Mousehook, nCode, wParam, lParam);
}
這是我具備的功能,它被稱爲與
Mousehook = SetWindowsHookEx(WH_MOUSE_LL, HookCallback, NULL, 0);
但我不知道如何使所有到一個單獨的線程,單呼。
任何人都知道一個好方法?任何幫助將不勝感激,這是甚至可能是這樣嗎?
創建一個調用'SetWindowsHookEx'的工作線程,然後進入消息循環('GetMessage' +'DispatchMessate',直到你想關閉線程)。 –
謝謝你把我放在正確的軌道上:D如果你想有發佈答案的榮譽,你可以這樣做,或者只是複製粘貼我發佈的答案,所以你得到的信譽我的意思 – Charlie