Quote:
Originally Posted by Ixiterra
You could always release the source then.
|
SetWindowsHookEx() was foobar'd in Vista, in that you can no longer use it to create global hooks.
Instead of defining a global hook, this limits it to the calling process.
Code:
0060D560 . E8 DDF9FFFF CALL <JMP.&KERNEL32.GetCurrentThreadId> ; [GetCurrentThreadId
0060D565 . 8915 74976B00 MOV DWORD PTR DS:[6B9774], EDX
0060D56B . 50 PUSH EAX ; /ThreadID
0060D56C . 90 NOP ; |
0060D56D . A1 90046400 MOV EAX, DWORD PTR DS:[640490] ; |
0060D572 . 50 PUSH EAX ; |hModule => NULL
0060D573 . 68 C8CE5700 PUSH T1Vista.0057CEC8 ; |Hookproc = T1Vista.0057CEC8
0060D578 . 6A 05 PUSH 5 ; |HookType = WH_CBT
0060D57A . E8 1DFFFFFF CALL <JMP.&USER32.SetWindowsHookExA> ; \SetWindowsHookExA
0060D57F . A3 70976B00 MOV DWORD PTR DS:[6B9770], EAX
0060D584 . C3 RETN