Thread in C++ für Tastendrucksimulation



  • Hi!

    Ich habe vor das ich einen Tastendrucksimulation programmier jedoch steh ich vor dem follgenden Problem, wenn ich den folgenden Code ausführe wird nur zwei mal s gedrückt und nicht so wie gewollt das die Taste s eine Sekunde lang gedrückt wird, darum dachte ich gibt es in C++ so was ähnliches wie einen Thread?

    Danke schon mal!

    int main(int argc, char *argv[])
    {
        HWND hwnd = FindWindow(NULL, "Eingabeaufforderung");
        SetForegroundWindow(hwnd); 
    
        PostMessage(hwnd, WM_KEYDOWN, 0x53, 0 );
        Sleep(1000);
        PostMessage(hwnd, WM_KEYUP, 0x53, 0 );
    
        return EXIT_SUCCESS;
    }
    


  • Hallo

    Im Standard gibt es keine Threads, aber du kannst dir ja mal boost anschauen.

    chrische



  • darf ich kurz fragen, welche header du eingebunden hast?

    (weil das würde mir ungemein weiter helfen)



  • chrische5 schrieb:

    Im Standard gibt es keine Threads, aber du kannst dir ja mal boost anschauen.

    Andere Frage sollte nicht PostMessage(hwnd, WM_KEYDOWN, 0x53, 0 ); nicht solange gedrückt bleiben bis das KEYUP kommt irgendwie funktioniert das bei mir auch nicht.

    supersass1 schrieb:

    darf ich kurz fragen, welche header du eingebunden hast?
    (weil das würde mir ungemein weiter helfen)

    windows.h 😉



  • Andere Frage sollte nicht PostMessage(hwnd, WM_KEYDOWN, 0x53, 0 ); nicht solange gedrückt bleiben bis das KEYUP kommt irgendwie funktioniert das bei mir auch nicht.

    Da scheinst du das Message-Handling der Win-API nicht ganz zu verstehen.
    Du setzt zwar das KeyDown-Event ab, aber das heißt noch lange nicht, daß Windows dann solange KeyDown-Events selber sendet, bis irgendwer ein Key-Up Event auslöst. Fazit: Das mußt du schon selber programmieren...


Anmelden zum Antworten