Du bist nicht angemeldet.

  • Anmelden
  • Registrieren

suxx-

unregistriert

1

13.06.2004, 22:12

[TUT] KeyBindings w/o GetAsyncKeyStat

Guten Tag,

Ich darf sie wieder zu einer neuen Ausgabe von spieletermine Tutorial Hacks begrüßen.
Heute geht es um KeyBindings ohne GetAsyncKeyStat zu benutzen.

Theorie

Was wollen wir erreichen


  • KeyBindings
  • Mousewheel benutzen können
Was benötigen wir dafür ?

  • Eine hooked WindowProc
So gut nun können wir auch gleich anfangen mit der hooked WindowProc

Quellcode

1
2
3
4
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

Quellcode

1
2
3
4
5
6
7
8
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

Quellcode

1
2
3
4
5
6
7
8
9
10
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 :)

Bobby

Fortgeschrittener

Beiträge: 344

2

14.06.2004, 08:48

und mal wieder ein schönes tut von sux :busch:
weiter so

Thema bewerten