S
suxx-
Guten Tag,
Ich darf sie wieder zu einer neuen Ausgabe von 00DE Tutorial Hacks begrüßen.
Heute geht es um KeyBindings ohne GetAsyncKeyStat zu benutzen.
Theorie
Was wollen wir erreichen
Und schon haben wir die WindowProc gehooked nun müssen wir nur noch Wissen was welcher Parameta bewirkt.
uMsg:
Enthält die entsprechende Nachricht was "gemacht" wurde z.B. die Maus wurde bewegt oder eine Taste wurde gedrückt
wParam:
Enhält Informationen darüber was z.B. noch gedrückt ist also sprich ALT oder STRG öfters auch in High- und Low-Order Words unterteilt speziell wenn man Informationen der Maus erhält
lParam:
Enthält Informationen über den Repeat-Count oder Extended-Key Flags usw.
So nun können wir es auch schon Anwenden
So und unsere KeyHandle könnte in etwa so aussehen
So und das war es schon wieder ich hoffe es kann einigen Helfen und nun verabschiede ich mich hiermit in eine wunderschöne Woche Prag also have fun and stay tuned
Ich darf sie wieder zu einer neuen Ausgabe von 00DE Tutorial Hacks begrüßen.
Heute geht es um KeyBindings ohne GetAsyncKeyStat zu benutzen.
Theorie
Was wollen wir erreichen
- KeyBindings
- Mousewheel benutzen können
- Eine hooked WindowProc
Code:
LRESULT CALLBACK HookedWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
Und schon haben wir die WindowProc gehooked nun müssen wir nur noch Wissen was welcher Parameta bewirkt.
uMsg:
Enthält die entsprechende Nachricht was "gemacht" wurde z.B. die Maus wurde bewegt oder eine Taste wurde gedrückt
wParam:
Enhält Informationen darüber was z.B. noch gedrückt ist also sprich ALT oder STRG öfters auch in High- und Low-Order Words unterteilt speziell wenn man Informationen der Maus erhält
lParam:
Enthält Informationen über den Repeat-Count oder Extended-Key Flags usw.
So nun können wir es auch schon Anwenden
Code:
LRESULT CALLBACK HookedWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
if(uMsg == WM_KEYDOWN) // Wenn eine Taste gedrück ist
{
KeyHandle(wParam); // rufen wir unsere KeyHandle auf
}
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
So und unsere KeyHandle könnte in etwa so aussehen
Code:
void KeyHandle(WPARAM Key)
{
switch (Key) {
case VK_DELETE: // Entf <-> Del
//Unsere Sachen
// z.B. können wir sagen key[VK_DELETE].pressed=!key[VK_DELETE].pressed;
// dann können wir es im Hack benutzen wie auch GetAsyncKeyStat
break;
}
}
So und das war es schon wieder ich hoffe es kann einigen Helfen und nun verabschiede ich mich hiermit in eine wunderschöne Woche Prag also have fun and stay tuned