Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 12:34

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



c++ keybd_event problem

Discussion on c++ keybd_event problem within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 20
Join Date: Apr 2010
Posts: 51
Received Thanks: 29
c++ keybd_event problem

ich hab ein kleines problem beim tastendruck simulieren in c++ und zwar

Code:
Sleep(100);
 
 keybd_event(VkKeyScan('E'),0,0 , 0);
hier wird ja e gesendet aber leider nur auf das programm das im vordergrund steht
wie kann man das z.b. zu nostale senden??
also nur zu nostale

und wie kann man dem programm sagen das es warten sol bis nostale geöfnet ist??


für jede hilfreiche antwort gibts ein thx

schon mal danke im voraus
djleitno22 is offline  
Old 06/14/2010, 07:52   #2
 
elite*gold: 0
Join Date: Jun 2010
Posts: 1
Received Thanks: 1
Das gleiche Problem hatte ich auch schonmal. Also du kannst mit der Funktion FindWindow(a, b) nach einem Fenster suchen, Parameter a ist der Fenstertitel und b ist der Name der Fensterklasse (einer der beiden Parameter darf NULL seien). Rückgabewert ist dann ein Handle(HWND in diesem Fall). Den Handle nimmst du und schickst per SendMessage oder PostMessage folgende drei Messages in genau der Reihenfolge:
WM_KEYDOWN
WM_CHAR
WM_KEYUP
Am besten guckst du bei MSDN, wie die messages aufgebaut seien müssen, ich weiss es nämlich auch nicht aus dem Kopf.

Um darauf zu warten, dass die Anwendung gestartet ist, lässt du FindWindow in einer while laufen, solange es NULL liefert.
Dieser Ansatz funktioniert allerdings meines Wissens nach mit manchen Spielen nicht. Speziell mit denen die fürs auslesen der Tastatur DirectInput statt der normalen Windows-API benutzen.
fridget is offline  
Thanks
1 User
Old 06/15/2010, 11:10   #3

 
Adroxxx's Avatar
 
elite*gold: 15
Join Date: Nov 2005
Posts: 13,021
Received Thanks: 5,323

Da hast du mal ein Beispiel für SendMessage.

Und wie fridget gesagt hat, funktioniert das bei Spielen die DirectInput benutzten nicht. Da müsste man des hooken.
Adroxxx is offline  
Thanks
2 Users
Old 06/17/2010, 12:08   #4
 
elite*gold: 0
Join Date: Jun 2010
Posts: 5
Received Thanks: 0
You need to do your own homework. this is a masterpiece - if you need, youtube the cincinnati ballet!
elex smith is offline  
Old 06/17/2010, 14:51   #5
 
HardCore.1337's Avatar
 
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
Benutz lieber Postmessage. Diese Funktion sendet die tasten an ein handle, das du mit FindWindow suchen kannst.
HardCore.1337 is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[hilfe] c++ keybd_event
07/01/2010 - C/C++ - 3 Replies
hallo ich hab ein kleines problem ich hab versucht einen bot mit c++ zu schreiben aber der compiler zeigt immer einen fehler an ich hab im internet nichts dazu gefunden könt ihr mir bitte helfen #include <iostream>
[Problem] Problem with server starting - cannot find quest index for PaxHeader
12/22/2009 - Metin2 Private Server - 1 Replies
Hello! I have this same problem as here when i'm starting my server: http://www.elitepvpers.com/forum/metin2-pserver-di scussions-questions/307143-metin2-serverfiles-ques t-index-fehler.html But I didn't know the answer.. how to repair this? Greetings
Self-Type (using keybd_event)
11/30/2009 - CO2 Programming - 0 Replies
Self-Type. By: Str1k3r21 Credits: MSDN, UC-FORUM. Enjoy void cType::Key(BYTE bVK){ // Simulate a key press keybd_event( bVK, NULL, KEYEVENTF_EXTENDEDKEY | 0,
'keybd_event' -Alternative
10/16/2008 - General Coding - 13 Replies
Guten Tag. Könnte mir jemand freundlicherweise die Funktion zum Simulieren des Drückens einer Taste aktualisieren, und zwar so, dass diese in den meisten MMORPGs funktioniert? Also so ähnlich wie die von AutoIt, die, soweit ich weiß, 'WinAttach' gebraucht. PS: Darüberhinaus würde ich es begrüßen, wenn mir einer den Quellcode kompilieren könnte, da ich überhaupt nicht weiß, wie so etwas funktioniert. Vielen Dank :-)



All times are GMT +1. The time now is 12:34.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.