Hi, I downloaded Larry's hook.dll (thanks Larry!) and runs the MouseHook.au3 script. But the script can't capture the WM_KEYUP message. So I checked the original dll.c code and found: in function: LRESULT CALLBACK KeyProc( int nCode, WPARAM wParam, LPARAM lParam { ...... if (lParam & 0x80000000) PostMessage(m_hHwndKey, AU3_WM_KEYDOWN, wParam, iState); else { PostMessage(m_hHwndKey, AU3_WM_KEYDOWN, wParam, iState); } ...... } I think one of the red part should be AU3_WM_KEYUP. One can also check the behavior of the MouseHook.au3: when a key is pressed and released, two identical message shows in the tooltip. Could someone please: 1. I download hook.dll in some part of the forum (sorry I forgot the link). If there is a correct version of hook.dll, could you please tell me the link? 2. I don't have a MS VC++ installed. If there is not a correct version of hook.dll, could you please build one and provide the link? 3. Is it possible to implement dll.c in AutoIt3 script? Thank you, guys!