Récupérer des entrées clavier hors d'une fenêtre Win21
Taranael
Messages postés54Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 2007
-
6 avril 2005 à 18:17
Taranael
Messages postés54Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 2007
-
7 avril 2005 à 09:25
Salut ! Bon j'ai un problème pour un p'tit programme idiot que j'ai fait, c'est un piano tout con en C qui joue de la musique avec votre tourelle quand on appuie sur les touches du clavier ( en gros c'est un switch et un getch dans un while , rien de bien extra-ordinaire). Maintenant je voudrais que mon programme puisse lire les touches enfoncée du clavier même en dehors de la fenêtre du programme ! Mon prof m'a conseillé de me renseigner sur SDL, ce que j'ai fait mais le problème reste le même : quand on sort de la fenêtre il s'occupe plus de ce que je fais avec mon clavier !
Si quelqu'un a une idée à me proposer :)
( PS : à terme mon but serait de faire disparaitre cette fenêtre pour n'avoir qu'une icône dans la barre à côté de l'horloge , comme MSN quoi)
Merci d'avance ;)
L'ordinateur fait toujours ce qu'on lui demande !
Le problème c'est qu'il ne comprend pas ce qu'on lui demande ...
Lord_Patoche
Messages postés196Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 1 mai 20093 6 avril 2005 à 22:51
salut. Alors voila le soucis. Windows est un systeme d'exploitation dans lequel plusieurs programmes peuvent être lancés. chacun de ces programme appelé processus occupe un espace mémoire virtuel alloué par Windows. il est impossible à un programme exe situé dans un espace mémoire intervienne dans un espace mémoire d'un autre programme exe directement. c'est une sécurité de windows. La seule façon de le faire, c'est d'utiliser une procédure de Hook. Il s'agit d'une DLL chargée en mémoire au moyen d'un programme de lancement, DLL qui va détourner des évènements Windows des autrs processus. notre DLL pourra gérer ces évènements dfférement avant de les renvoyer à leur processus initial.
J'ai fait un petit programme de hook pour espionner ce qui est tapé sur ma bécane, je vais le mettre en source, mais je dois le pauffiner un peu. dès qu'il est prêt je te l'envoie.
PS : on utilise une DLL, car c'est le seul programme qui sous Windows peut accéder à des processus différents de celui qui l'a lancé.
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 7 avril 2005 à 04:24
Salut,
Voici un petit programme sans fenêtre qui joue des notes quand on
tape les touches AZERTYUI du clavier quelque soit l'application active.
Il utilise le petit haut-parleur de l'unité centrale. Il s'agit d'un
hook clavier. Pour arrêter le programme et le hook, tu tapes F12.
Taranael
Messages postés54Date d'inscriptiondimanche 27 février 2005StatutMembreDernière intervention21 juin 20071 7 avril 2005 à 09:25
OKay merci tout le monde je vais étudier cette piste là donc :)
Je sens que je vais me manger une bonne migraine moi pour mes vacances :D
Je posterais mon prog quand je l'aurais fini ;)
Ah et juste j'ai l'air idiot ,c'est bien sur une faute de frappe dans le titre , je parle de Win32 et pas Win21 :)
L'ordinateur fait toujours ce qu'on lui demande !
Le problème c'est qu'il ne comprend pas ce qu'on lui demande ...