C++ Tasten simulieren



  • 🤡



  • 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 wollen

    LRESULT 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;
    }
    

Anmelden zum Antworten