|
You last visited: Today at 13:37
Advertisement
VS C++ SendKeys an Fenster senden
Discussion on VS C++ SendKeys an Fenster senden within the C/C++ forum part of the Coders Den category.
09/17/2010, 08:49
|
#1
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
VS C++ SendKeys an Fenster senden
Hallo
ich würde gerne mit
private: System::Void timer1_Tick(System::Object^ sender,
System::EventArgs^ e) {
SendKeys::Send ("{ENTER}");
Sleep(3000);
SendKeys::Send ("{TAB}");
SendKeys::Send ("1");
Sleep(2000);
SendKeys::Send ("{TAB}");
SendKeys::Send ("1");
einen Bot machen, aber das wird nicht an das Spiel Fenster gesendet.
Nur immer was der Taste ESC entspricht kommt an.
Danke wer mir da weiterhelfen kann.
|
|
|
09/17/2010, 15:06
|
#2
|
elite*gold: LOCKED
Join Date: Aug 2006
Posts: 3,292
Received Thanks: 866
|
|
|
|
09/17/2010, 17:35
|
#3
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
Kenne das ms Zeugs ja
Aber ist nicht sehr hilfreich.
Ich bräucht nen Beispiel für meinen Fall.
|
|
|
09/17/2010, 18:05
|
#4
|
elite*gold: LOCKED
Join Date: Aug 2006
Posts: 3,292
Received Thanks: 866
|
Code:
HANDLE fw;
fw = FindWindow(NULL, "ICQ")
PostMessage(fw, WM_KEYDOWN, VK_RETURN, 0);
 da sind die ganzen Virtualkeys aufgelistet.
Sollte so eig gehen, wenn nicht -> msnd lesen & googlen :>
|
|
|
09/18/2010, 10:32
|
#5
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
nee leider, nichts geht
jede Menge Fehler kommen bei debug.
|
|
|
09/18/2010, 10:45
|
#6
|
elite*gold: LOCKED
Join Date: Aug 2006
Posts: 3,292
Received Thanks: 866
|
ja weil ich dir die Includes nicht da zu geschrieben habe 
Ein bisschen denken sollst du ja auch.
|
|
|
09/18/2010, 15:12
|
#7
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
hm, ich bin zu neu in cpp um die kennen zu müssen
Ich befasse mich erst seit einigen Tagen damit.
hab iostream und windows.h drin bisher
hab nun
#define WM_COMPLETE (WM_USER + 0)
wie es in msdn steht auch dazu gemacht. Bringt auch nichts.
|
|
|
09/18/2010, 16:20
|
#8
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,907
Received Thanks: 25,408
|
Wenn du windows.h included hast, sollte es auch gehen.
2 Sachen:
1. wie wäre es, wenn du uns die Fehlermeldung einfach mal hinschreibst? 
2. wieso willst du etwas schwereres, wie zb. Tastendrücke senden, in C++ machen, wenn du die Sprache nicht kannst?
|
|
|
09/18/2010, 17:09
|
#9
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
zu 1). ; (deutet irwie auf fehlender #include hin)
Quote:
1>c:\users\***\documents\visual studio 2010\projects\i_bot_1\i_bot_1\Form1.h(158): error C2664: 'FindWindowW': Konvertierung des Parameters 2 von 'const char [7]' in 'LPCWSTR' nicht möglich
1> Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
1>c:\users\***\documents\visual studio 2010\projects\i_bot_1\i_bot_1\Form1.h(159): error C2664: 'PostMessageW': Konvertierung des Parameters 1 von 'const char [7]' in 'HWND' nicht möglich
1> Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
|
zu 2) ;
in AutoIt ist es nicht möglich leider weil ich nen "Shield" vor mir hab das AutoIT erkennt und blockt.
Ich mag Cpp sehr, hab sonst mit Dev rumgemacht. Aber von VS 2010 bin ich noch mehr begeistert. Also ich bin lern begierig
P.S. ich habe das gegebene Beispiel komplett in den Bereich "#pragma Endregion" gesetzt. Ich denke das könnte ein Fehlergrund sein :\
|
|
|
09/18/2010, 19:53
|
#10
|
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
|
PHP Code:
FindWindowA("CLASS", "NAME")
oder:
PHP Code:
FindWindow(L"CLASS", L"NAME")
Ich benutze PostMessage so:
PHP Code:
void _SendKey(int Key, LPCSTR ClassName = NULL, LPCSTR WindowName = NULL){
HWND hWnd = FindWindowA(ClassName, WindowName);
if(hWnd){
LPARAM SendKey = (MapVirtualKey(Key, 0) << 0x10);
PostMessage(hWnd, WM_KEYDOWN, 0, SendKey);
Sleep(100);
PostMessage(hWnd, WM_KEYUP, 0, SendKey);
}
}
|
|
|
09/19/2010, 10:09
|
#11
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
Danke "*** of Coding" *grinz
Alle Fehler weg nun bis auf einen:
Form1.h(161): error C2601: '_SendKey': Lokale Funktionsdefinitionen sind unzulässig
was kann das sein ?
|
|
|
09/19/2010, 11:27
|
#12
|
elite*gold: 42
Join Date: Jun 2008
Posts: 5,425
Received Thanks: 1,888
|
Quote:
Originally Posted by Lawnmove
Danke "*** of Coding" *grinz
Alle Fehler weg nun bis auf einen:
Form1.h(161): error C2601: '_SendKey': Lokale Funktionsdefinitionen sind unzulässig
was kann das sein ?
|
Steht da doch, Lokale Funktionsdefinition.
Und nun geh wieder in deine kleine, bunte AutoIt-Welt und spiel im Sandkasten, danke.
Mal ganz ehrlich, wieso helft ihr solchen Leuten?
|
|
|
09/20/2010, 12:53
|
#13
|
elite*gold: 0
Join Date: Nov 2005
Posts: 95
Received Thanks: 9
|
Hm well yes, PostMessage will work, Sometimes you need to get both wParam and lParam correct in order for the game to respond. DAoC is one of these games.
Thats params for alot of keys. Logged these by hand, and it took ages >_<...but it works nicely.
It'll look something like this:
PostMessage(hWnd, WM_KEYDOWN, (int)VK_A.wParam, (int)VK_A.lParam);
Another option is to call the WndProc, but that requires you to be inside the process in question.
|
|
|
09/21/2010, 10:49
|
#14
|
elite*gold: 0
Join Date: Feb 2010
Posts: 388
Received Thanks: 111
|
thx mgX
but i see in the Header C#
Its the same in ++ ?
|
|
|
09/21/2010, 13:00
|
#15
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,907
Received Thanks: 25,408
|
Quote:
Originally Posted by Lawnmove
zu 1). ; (deutet irwie auf fehlender #include hin)
zu 2) ;
in AutoIt ist es nicht möglich leider weil ich nen "Shield" vor mir hab das AutoIT erkennt und blockt.
Ich mag Cpp sehr, hab sonst mit Dev rumgemacht. Aber von VS 2010 bin ich noch mehr begeistert. Also ich bin lern begierig
P.S. ich habe das gegebene Beispiel komplett in den Bereich "#pragma Endregion" gesetzt. Ich denke das könnte ein Fehlergrund sein :\
|
wenn Autoit geblockt wird, wird auch C++ geblockt
Quote:
|
Aber von VS 2010 bin ich noch mehr begeistert. Also ich bin lern begierig
|
du gehst es trotzdem falsch an.
naja, nutz google und SuFu, dann wirst du genug zu tastendrücken finden, wenn du es unbeding willst.
deine fehler solltest du selbst finden können, wenn du die sprache angeblich kannst
#closed
|
|
|
 |
Similar Threads
|
[C++] Texte an nicht aktivierte Fenster senden
09/10/2010 - C/C++ - 25 Replies
Hi,
ich habe eine Frage:
Wie kann man in C++ an Fenster die nicht aktiviert sind Texte schicken ?
Beispielsweise Metin 2 ...
Danke im Vorraus...
mfg (der C++-Anfänger)DocWolf :D
|
rPE SendKeys
02/04/2010 - Ragnarok Online - 3 Replies
HI,
is it possible to use "SendKeys" in rPE custom filters??
so that when i recieved a packet it will press/send a specified KEY...
for example
when i recieved the packet "00522F" it will send/press "F1" ..
|
JoyToAR - Tastendruck an Fenster senden - Problem!
04/29/2009 - General Coding - 4 Replies
Problembeschreibung in den...
Crossposts:
Ace Online / AirRivals
AirRivals, Joysticks und Gamepads... - Hilfe und Fragen - AirRivals.de Board
Delphi-PRAXiS :: Tastendruck simulieren
Thx, LDer!
|
SendKeys
03/25/2009 - Flyff - 10 Replies
Mal eine Frage an alle Programmierer ich habe mir einen Petfeeder geproggt mi dem befehl SendKeys ("{F3}{Enter}")
wenn ich nun bei Flyff reingehe also original Server dann macht der bo Garnichts das dachte ich mir schon von anfang an wegen dem GG.
Dann gehe ich bei FlyForFame rein dort ist das iwie komisch er drückt Enter aber nicht F3 bzw irgendeine F taste aber Enter schon ???
jetzt ist die frage wie schaffe ich es entweder den Code so zu schrieben dass es funkt alo mit einem anderen...
|
Free zu Sendkeys...
09/11/2008 - Metin2 - 4 Replies
€dit: Meinte Frage zu Sendkeys^^ Sry...
Hi,
ich probiere in letzter zeit immer naja son Zeug halt aus um auch irgendwann was gutes zu scripten =) ...
Immoment mache ich nur nen paar sachen mit .bat Dateien die dann halt über andere Dateien was schicken usw halt ...
Jetzt muss ich aber was drücken >.> will aber nich dabei sein...
|
All times are GMT +1. The time now is 13:38.
|
|