Seite 2 von 2

Re: Im Spiel eine Taste drücken

Verfasst: 28.05.2011 12:07
von thminz
Musst du die Anwendung über den Administrator laufen lassen? Denn wenn dem so ist, musst du deine Anwendung auch unter dem Administratormodus laufen lassen (Compiler-Einstellungen), sonst hast du nicht das "Recht" irgendwelche Ereignisse an das Programm zu senden...
Nein hat auch nicht geklappt. :?
Na, kommen wir dem Problem schon näher?
:(
Man muss mal wieder alles aus der Nase ziehen
Das ist doch total irrelevant es kann auch von mir aus ein CounterStrike Spiel sein. :freak:
Probiers mal, indem du das KEYEVENTF_SCANCODE Flag bernutzt und den Scancode einsetzt. DirectX erwartet nämlich Scancodes, keine VirtualKeys.
Dashabe ich schon gefunden und es klappt nicht. :cry:

Code: Alles auswählen

#WH_KEYBOARD_LL = 13
#INPUT_HARDWARE = 2
#INPUT_KEYBOARD = 1
#KEYEVENTF_UNICODE = $4
#KEYEVENTF_SCANCODE = $8


Global myKeyHook

Structure KBDLLHOOKSTRUCT
vkCode.l
scanCode.l
flags.l
time.l
dwExtraInfo.l
EndStructure

Structure INPUT_DATA
type.l
StructureUnion
mi.MOUSEINPUT
ki.KEYBDINPUT
hi.HARDWAREINPUT
EndStructureUnion
EndStructure

Define *keyInput.KBDLLHOOKSTRUCT
Define ret.l, hwnd.l
Define mkeyInput.KEYBDINPUT
Define InputData.INPUT_DATA


; Hier starte ich das Spiel vorher !!!


Delay(5000)

Inputdata\type = #INPUT_KEYBOARD   
*keyInput = lParam


 
inputdata\ki\wVk= #VK_Q
     

    inputdata\ki\wScan = 0
    inputdata\ki\time = 1000
    InputData\ki\dwExtraInfo = 0  
InputData\ki\dwFlags = #KEYEVENTF_SCANCODE | #KEYEVENTF_KEYUP   

     
     SendInput_(1,InputData, SizeOf(INPUT_DATA))

Es gibt auch noch asm kann man damit vielleicht was machen ? :roll:

Re: Im Spiel eine Taste drücken

Verfasst: 28.05.2011 12:19
von ts-soft
Mach was sinnvolles und schreibe Dein Spiel selber, dann hast Du auch volle Kontrolle.
Cheaten, Trainer und so ein Quatsch ist doch Selbstverarschung.
Wichtige Dinge wirste damit auch nicht lernen. Spiele haben nun mal Regeln, wenn man
diese verlässt sollte man das Spielen lieber lassen, aber so etwas lernt man meist bereits im
Kindergarten.

Re: Im Spiel eine Taste drücken

Verfasst: 28.05.2011 16:34
von RSBasic
@thminz
Was hast du denn jetzt überhaupt ausprobiert? Und dein Code, den du gepostet hast, ist auch falsch.
Wie The Shark richtig gesagt hat, musst du Scancodes benutzen. Aber das hast du in deinem Beispielcode nicht gemacht. Du benutzt stattdessen immernoch die VirtualKeys. Es gibt dort in der API-Struktur einen anderen Eintrag für ScanCodes: \wScan
Diesen musst du auch nutzen. Und außerdem ist es schon wichtig, wenn du den Namen des Spiels nennst. Sonst können wir dir überhaupt nicht helfen.
Und wie ts-soft bereits sagte: Mach wirklich was sinnvolles. Erstell doch einfach mal 'ne richtige Anwendung und kein Cheat-Programm. Da hast du mehr Erfolg. ;)

Re: Im Spiel eine Taste drücken

Verfasst: 29.05.2011 11:12
von thminz
ok funktioniert.

Nur die Werte der tasten sind anders aber das krieg ich schon selber raus.

Re: Im Spiel eine Taste drücken

Verfasst: 29.05.2011 12:07
von The Shark
Kannst die #PB_Key_ konstanten nehmen, das sollten die Scancodes sein. Sonst holst sie dir von http://www.blitzforum.de/help/Scancodes