Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

07.11.2010, 13:23

Automatisches klicken eines Buttons

Hi leute,

ich will für ein Spiel (NosTale) ein Programm schreiben, welches automatisch den Server auswählt.

Ich bin bis jetzt so weit gekommen:

C-/C++-Quelltext

1
2
3
4
5
6
7
#include "Windows.h"
int main (){int X = 10;int Y = 10;
HWND hWnd;
hWnd = FindWindow(NULL, TEXT("NosTale"));
SendMessage(hWnd, WM_LBUTTONDOWN, 0, MAKELPARAM(X, Y));
return 0;
}



Er tut jedoch im Spiel (wenn ich das Programm starte) überhaupt nichts, außer, dass er eine konsole öffnet.

Kann mir wer helfen ?

lg

2

07.11.2010, 13:25

Was soll es denn anderes tun? Es öffnet die konsole, dann sucht es dein Fenster, schickt daran eine LBUTTONDOWN message, und beendet sich wieder. -> Das funktioniert alles so, wie es soll, mit dem Code!

Hast geschaut, ob das Event auch ankommt, bei deinem Programm?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »E333« (07.11.2010, 13:53)


3

07.11.2010, 20:41

Also es klickt aber nicht!

Ich weiß nicht wie ich das tue.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

4

07.11.2010, 21:12

http://msdn.microsoft.com/en-us/library/ms646310(VS.85).aspx
Wenn das Spiel aber z.B. DirectInput im exclusive mode verwendet könnte das schwierig werden...

n0_0ne

1x Contest-Sieger

  • Private Nachricht senden

5

07.11.2010, 22:08

wie merkst du überhaupt, dass nicht geklickt wurde? was ist denn so weit oben links in der ecke (x=10,y=10)?

6

08.11.2010, 16:51

das ist nicht die richtige version.

Natürlich habe ich das schon bei mir angepasst xD.

lg

babelfish

Alter Hase

Beiträge: 1 222

Wohnort: Schweiz

Beruf: Informatiker

  • Private Nachricht senden

7

08.11.2010, 17:11

Und sowas in der Art?
Weiss nicht ob es sinnvoller ist abwechselnd mousedown und mouseup aufzurufen, nicht getestet (aber wahrscheinlich schon).

C-/C++-Quelltext

1
2
3
4
5
6
7
8
#include "Windows.h"
int main (){
HWND hWnd;
hWnd = FindWindow(NULL, TEXT("NosTale"));
for(int y=0; y<480; y+=10) for(int x=0; x<640; x+=10) SendMessage(hWnd, WM_LBUTTONDOWN, 0, MAKELPARAM(x, y));
for(int y=0; y<480; y+=10) for(int x=0; x<640; x+=10) SendMessage(hWnd, WM_LBUTTONUP, 0, MAKELPARAM(x, y));
return 0;
}

Werbeanzeige