Tastendruck Simulieren?

piätch

Grünschnabel
Hallo ,

also meine frage ist es wie kann ich Tastatureingaben simulieren?

Also ich habe nun ein programm z.b. in vb geschrieben wo ich ein textfeld habe wo ich was eingeben kann. Wenn ich dann Enter drücke wird das dann nochmal ausgegeben.
Das ja einfach und habe ich schon lange ;)

Nun wie könnte ich nun mit c++ eine Eingabe simulieren ?
Also wenn ichd das C++-Programm starte soll es die Eingabe simulieren und dort dann in das Textfeld einen String schreiben und dann noch ein Druck der Enter-Taste simulieren !
Wie kann ich das hinbekommen?

Ich habe nun schon genug gegoogelt und hier auch alles durchsucht nur finde ich nichts wirkliches und ich will auch nicht unbedingt einen Code haben sondern ein Prinzip das reicht auch schon mehr als aus ;)

Gruß Piatsch
 
Hey,

geht relativ einfach:

Code:
INPUT ipTastatur;

//Diese Werte müssen nur einmal gesetzt werden, um andere Tasten zu simulieren reicht
//es wenn du nur wVk und dwFlags änderst
ipTastatur.type = INPUT_KEYBOARD;
ipTastatur.ki.wScan = 0;
iipTastatur.ki.time = 0;
iipTastatur.ki.dwExtraInfo = 0;

//Hier jetzt wVk und dwFlags setzen und die Message absenden
ipTastatur.ki.wVk = VK_TAB;  //Hier kommt der Tastenbefehl rein, z.B. VK_TAB (Virual Key Code)
ipTastatur.ki.dwFlags = 0;  //0 ist Taste drücken, bleibt auch solange bis du dwFlags
                                     //auf KEYEVENTF_KEYUP setzt und die Message wieder sendest.

SendInput(1, &ipTastatur, sizeof(ipTastatur));  //Hier sendest du die Message

//Damit lässt du die Taste wieder los, sonst schreibt der dir ohne Ende Tabs rein xD
ipTastatur.ki.wVk = VK_TAB;
ipTastatur.ki.dwFlags = KEYEVENTF_KEYUP;

SendInput(1, &ipTastatur, sizeof(ipTastatur));

Bisschen über Virtual Key Codes googeln, dann kannst du so ziehmlich alles simmulieren. Auch Mausklicks sind damit möglich.

gruß
 
Zuletzt bearbeitet:
Zurück