C++ Tasten simulieren
-
Wie machst du's denn jetzt??? Mit keybd_event?
-
keine ahnung
-
Dann lass es!
-
-
Vielleicht koennte jemand mal einen funktionierenden Sourcecode posten,
den ich mir bzw. andere ansehen kann.
-
Schau doch in die MSDN und stell vernünftige Fragen. Für so einfache Sachen wird hier keine Komplettlösung geboten!!!
-
des is nich einfach
und des mit dem direct input geht auch nich
-
hier hast du ein paar ansätze wie ich das gelöst habe (bei "anno 1602" die taste F7 druecken, damit das spiel die ganze zeit schnell geht)
HWND hWindow = FindWindow (NULL, "ANNO 1602") ; SetForegroundWindow (hWindow) ; keybd_event (VK_F7, 0, 0, NULL) ; keybd_event (VK_F7, 0, KEYEVENTF_KEYUP, NULL) ;
mfg
toom
-
genau des hab ich auch davor geschrieben aber des klappt net
-
vielleicht findet ihr ja den fehler
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HWND hwcheat; int rc; char buf[100]; HDC hdc; hdc=GetDC(hwnd); hwcheat=FindWindow(0,"GIGA.de - Microsoft Internet Explorer"); rc=SetForegroundWindow(hwcheat); switch (message) { case WM_TIMER: keybd_event(VK_RIGHT,0 ,0,0); keybd_event(VK_RIGHT,0,KEYEVENTF_KEYUP,0); keybd_event(VK_LEFT ,0, 0,0); keybd_event(VK_LEFT,0,KEYEVENTF_KEYUP,0); break; case WM_DESTROY: PostQuitMessage (0); break; default: return DefWindowProc (hwnd, message, wParam, lParam); } return 0; }
-
Müsste klappen - auch, wenn's nicht perfekt ist.
-
Ist das ein Online-Spiel? Evtl. darfs du den Focus nicht auf das Hauptfenster setzten, sondern musst ihn auf ein Child (z.B. das des JavaAppletts setzen)
-
check mal gibt FindWindow () zurück gibt?
-
ne findwindow geht schon des fenster geht ja in den vordergrung wenn ichs offen und des mit keybd_event geht auch halt nur nich im "spiel"
-
Ist es jetzt ein JavaApplett, oder was genau? Hast du dir mal mit Spy++ bzw. WinSpector die Infos über die Child-Windows angeschaut?
-
ich habs
man war der fehler scheiße
da ich gebs euch mal dies auch noch haben wollenLRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { int rc; char buf[100]; HDC hdc; hdc=GetDC(hwnd); HWND hwcheat,hwcheatchild; switch (message) /* handle the messages */ { case WM_CREATE: hwcheat=FindWindow(0,"GIGA.de - Microsoft Internet Explorer"); hwcheatchild = GetLastActivePopup(hwcheat); rc=SetForegroundWindow(hwcheatchild); SetFocus(hwcheatchild); break; case WM_TIMER: keybd_event(VK_RIGHT,0 ,0,0); Sleep(9); keybd_event(VK_RIGHT,0,KEYEVENTF_KEYUP,0); Sleep(3); keybd_event(VK_LEFT ,0, 0,0); Sleep(9); keybd_event(VK_LEFT,0,KEYEVENTF_KEYUP,0); break; case WM_DESTROY: PostQuitMessage (0); /* send a WM_QUIT to the message queue */ break; default: /* for messages that we don't deal with */ return DefWindowProc (hwnd, message, wParam, lParam); } return 0; }