JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=975c59b78f5a48739fdf2953bccb8d98Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Tastatureingaben GLOBAL simulieren

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 15.06.2004, 15:06    Titel: Tastatureingaben GLOBAL simulieren Antworten mit Zitat

Hi!

Weiß jemand wie man GLOBAL Tastatureingaben simulieren kann?

Mit global meine ich, dass auch wenn das Programm dass sie simuliert nicht aktiviert(im Vordergrund) ist, die Tastatureingaben gesendet werden.

D.h. dass ich auf ein anderes Programm klicken kann und dann dort die simulierten Tastatureingaben zu sehen sind. Würde man zum Beispiel dann in Notepad etc.. klicken würde da zum Beispiel sowas stehen:
WWWDDWWWWAAAAAWWWWDDDWWWWWAAASSSSSDDDWWWDWW

So könnte man in einem Spiel Bewegungen ablaufen lassen ohne sie von diesem Programm selber simulieren zu lassen.

Ich möchte das so machen, dass die Tastatureingaben GLOBAL simuliert werden, bitte macht keine andere Vorschläge wie ich das NICHT GLOBAL lösen könnte. Danke! Very Happy

Vielen Dank schon mal für eure Antworten!! Smile
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 15.06.2004, 15:10    Titel: Antworten mit Zitat

Gucke dir mal Windows Hooks an.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 15.06.2004, 15:12    Titel: Antworten mit Zitat

Also du willst quasi das dein programm im hintergrund läuft und dann so tut als ob eine taste gedrückt wurde?
Also so wie bei diesem einem Joysticktreiber, wo man jedem Knopf eine Taste am Keyboard zuordnen konnte und dann damit auch spiele spielen konnte, die eigentlich keine Joystickunterstützung hatten, weil diese dachtwn, die Täste wär gedürckt worden?

Dürfte schwierig sein, du müstest ja quasi so ne Art Tastaturtreiber proggen wenns wircklich gut funktionieren soll. Ansonsten könntest du versuchen Windowsnachrichtén zu schicken, aber ich glaub nicht das das so gut geht.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
AFE-GmdG
JLI MVP
JLI MVP


Alter: 45
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 16.06.2004, 08:15    Titel: Antworten mit Zitat

Hat DirectInput nicht einen Nonexclusiven Modus, der auch dann sendet, wenn die Anwendung nicht im Vordergrund ist?
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 16.06.2004, 11:38    Titel: Antworten mit Zitat

Was ist mit keybd_event oder SendInput ? Soweit ich weiss simulieren die einen Tastendruck über den Interrupt, kann mich aber auch irren.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
andijota
Junior JLI'ler



Anmeldedatum: 07.11.2002
Beiträge: 66
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 17.06.2004, 15:18    Titel: Antworten mit Zitat

SendKey is das stichwort.. dabei ist das richtige fenster auch buttons sind fenster zu finden FindWindow() , in der MSDN gibt es bei KillProcess hinweise ein Fenster zu finden ,
alternativ koenntest du mit Shellexecute diverse Macro-Programme aufrufen wie sie auf zeitschriften-CD s und unter teilweise Chip.de , downloads.de programmiererboard.de zu finden sind wie: MausUndTastRec , Macro.Magic , MacroEasyShortCut , HandyThing , MacroRapidKey , MacroRemoteKeys (zusatz "Macro" is nur meine Ordnerbezeichnung)

andi
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 17.06.2004, 15:40    Titel: Antworten mit Zitat

Nach einigen Modifikationen geht es jetzt mit SendInput(), aber ich hab da ein saublödes Problem...

Es scheint so als ob nach dem Ausführen des Programms die SHIFT-Taste stendig gedrückt wird. Wenn ich eine Datei markieren will (einmal Links-Mausklick) dann markiere ich eine Reihe von Dateien...

Gibt es irgendeine Funktion mit der man die Tastatur wieder "zurücksetzen" kann?
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 17.06.2004, 15:54    Titel: Antworten mit Zitat

Ich glaube du musst einen FLAg mit angeben bei den du sagst das das loslassen der taste simuliert werden soll. Schau am besten mal in die MSDN
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 17.06.2004, 16:15    Titel: Antworten mit Zitat

Hab jetzt einfach ne For-Schleife geschrieben die alle Tasten "loslässt" Smile

Bei meinem Programm lese ich im Moment die aufgezeichneten Tastenkombinationen ein und speichere sie in eine Binäredatei. Aber sieht man wenn man eine Binär-Datei öffnet Buchstaben und Zahlen?
Zitat:
H A L L O 1 2 3 T E S T


Eigentlich nicht, oder? Ich schreibe die Tastaturcodes mit fwrite rein.
fwrite(&i,sizeof(i),1,file)
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 17.06.2004, 16:19    Titel: Antworten mit Zitat

Text und Binär unterscheiden sich nicht unbedingt extrem voneinander, ich glaube das die Schlüsselsymbole nur etwas anders verwenden beim schreiben und lesen mit dem f... zeug.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 17.06.2004, 17:44    Titel: Antworten mit Zitat

Also du meinst wenn du die Binärdatei mit dem Texteditor öffnest, steht da irgend ein Text?
Könnte schon sein, da man Textdateien ja auch als Binärdateien interpretieren kann und ander herum. Aber viel was sinnvolles dürfte man eigentlich nicht lesen können.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 17.06.2004, 20:33    Titel: Antworten mit Zitat

TheMillenium hat Folgendes geschrieben:
Aber sieht man wenn man eine Binär-Datei öffnet Buchstaben und Zahlen?

Klar ist das so.
Das in der Datei sind ja schließlich "nur" Bytes und wenn du z.B. ein 'A' (Wert 65) reinschreibst, dann wird von jedem gewöhnlichen Editor auch ein 'A' angezeigt Wink
_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum