Langage assembleur : comment reconnaitre un code qui attend une commande clavier

cs_foxtrotmike3 Messages postés 4 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 24 novembre 2012 - 24 nov. 2012 à 12:42
ToutEnMasm Messages postés 587 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 13 décembre 2022 - 28 nov. 2012 à 15:50
Bonjour!

Bon, j'espère ne pas paraitre bête en posant cette question.

J'ai vu a quoi correspondait chaque code de chaque touche du clavier mais pas moyen de mettre la main sur le code qui attend une pression de touche clavier.

Par exemple :

Le programme se met en route, et à un moment donné plusieurs choix s'offrent à nous:
> c : pour faire une chose
> r : une autre
> F1 : encore une autre Etc...

Et bien j'aimerais savoir comment reconnaitre le code qui fait suite à la pression de la touche "c" par exemple.

En espérant avoir été assez clair. Merci d'avance.

3 réponses

ToutEnMasm Messages postés 587 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 13 décembre 2022 3
24 nov. 2012 à 13:50
La question n'est pas clair du tout.
Il manque l'assembleur utilisé 16,32 bits.
Masm,tasm,....Le systeme utilise,console,windows.

D'une maniere générale le windows sdk répond a la question en définissant des codes de touches comme VK_..
Un IDE peut aussi répondre a la question.
Des exemples montrent aussi l'utilisation du clavier,Y a qu'a piocher.
Le tout est de clarifier la question,après on trouve.
0
cs_foxtrotmike3 Messages postés 4 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 24 novembre 2012
24 nov. 2012 à 23:09
Oui je sais je ne suis pas clair mais je m'en doutais un peu vu que j'utilise des mots qui ne sont pas forcément apropriés.

Le programme utilisé est MASM32/TASM32 (d'apres PEiD)

J'utilise IDA pour desassembler, et le programme en question est un programme qui demande une pression de telle ou telle touche pour effectuer telle ou telle tache. Il ne sert qu'à ça.

Concrètement, c'est ce qu'on appelle un trainer dans le monde du jeu video. Les trainers sont donc des programmes qui changent des valeurs dans un jeu lorsqu'on appuie sur une touche.
Imaginons, j'ai dans le jeu 0 $. Le trainer ajoute 1000 $ qd on appuie sur F3. J'appuie 5 fois et je me retrouve avec 5000 $.

Et bien par curiosité j'aimerais savoir où est le code (ou en tout cas quel forme il a) dans ce programme qui écrit cette valeur.
0
ToutEnMasm Messages postés 587 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 13 décembre 2022 3
28 nov. 2012 à 15:50
Plus clair mais très difficilement faisable.
Dans l'ordre,on trouve:
Un niveau matériel géré par un fichier système et un niveau logiciel(API..).
Le niveau matériel est protégé et n'est pas accessible a un éxécutable.
Des programmes de hook permettent d'intercepter les informations passant par le clavier mais ne permettent pas de les modifier(!).
D'autres programmes de hook permettent d'intercepter les API.
Enfin il faut compter avec le jeu qui peut avoir prévu tout ça.
0
Rejoignez-nous