Keyboard-Event
-
Guten Tag,
ich möchte für ein Spiel ein Programm schreiben, das in den Chat folgendes schreibt :(enter).npc emote 1(enter)
(sleep 200)
(enter).npc emote 2(enter)
...Nun gibts aber ein "kleines" Problem. Sagen wir mein Programm sähe so aus :
#include <iostream> #include <windows.h> int main() { for(int i = 0; i < 2000; i++) { keybd_event(VK_RETURN, 0x13, 0, 0); keybd_event(VK_RETURN, 0x13, KEYEVENTF_KEYUP, 0); //Enter Taste Sleep(1); keybd_event(0x46, 0x46, 0, 0); keybd_event(0x46, 0x46, KEYEVENT_KEYUP, 0); //"." Taste Sleep(1); ... } }Gehen wir davon aus, das Spielchen mache ich jetzt bis ".npc emote ". Nun kommen wir zu meinem Problem, der Zahl. Wie schreibe ich in dem keybd_event die jeweile Zahl von 1-2000 ? Ich kann leider nicht einfach
keybd_event(0x01, ... 0x02 ... 0x03 ... 0x2000schreiben.
Ich wüsste evtl. schon was. In C kann man folgendes machenint zahl = 1502; printf("Hexadezimalzahl : %x", zahl);Vielleicht gibt es also einen Weg, diesen ausgegeben HexaCode in einer anderen Variablen zu speichern und diesen in der keybd_event() Funktion zu benutzen.
Mit freundlichen Grüßen : FreakY (in love Cpp) :xmas1:
-
Dein printf-Beispiel könntest du mit sprintf so umformen, dass du in eine Variable (String) schreibst, statt auf den Bildschirm. Aber ich verstehe nicht ganz, was du da an keyb_event übergeben willst. Einen String kannst du schlecht übergeben (VK-Codes, siehe Doku). Kommst du an das Window-Handle des Chat-Fensters? Dann mach's doch eher mit WM_SETTEXT oder so.