IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Controler la souris avec un gamepad


Sujet :

Windows

  1. #1
    RLX
    RLX est déconnecté
    Membre du Club Avatar de RLX
    Inscrit en
    Octobre 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 51
    Points : 61
    Points
    61
    Par défaut Controler la souris avec un gamepad
    Salut,
    j'aimerais savoir si il est possible de faire un programme en C++ qui tourne en tâche de fond (autre qu'un driver) et qui gère les événements de ma manette à la place de la souris. Je m'explique j'ai un gamepad sans fil et j'aimerais l'utilser comme "souris sans fil". Je suis un peu novice et j'ai déjà regardé en utilisant directinput mais visiblement dès que la fenêtre perd le focus on perd l'aquisition de la manette.
    :
    Pour résoudre un problème le plus dur n'est pas de trouver la solution, c'est de trouver celui qui la connait !!!!

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 62
    Points : 66
    Points
    66
    Par défaut
    je suis en train d'éssayer de faire sa justement avec un gamepad USb de microsoft ...

    Déja, il est reconnu automatiquement sous Windows, alors faut le désactiver, ensuite il faut installer ton propre driver (moi je l'ai compiler avec le DDK). La j'en suis au developpement de l'appli sous VC++. J'arrive a récuperer quelle touche a été appuyé (ou quelle direction), il faut maintenant que je transcrive sa en mouvement de souris / clic.

    C'est bien marrant

    Sinon, je te confirme que meme quand ma fenetre n'a pas le focus, l'acquisition des données marche quand meme !

    Arnaud

  3. #3
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut!

    Avec Delphi... Tu pourrais utiliser DelphiX pour obtenir la capture de ton joystick avec DirectInput. Ensuite, rien de plus simple pour positionner la souris... http://sub0.developpez.com/delphi/keytomouse.zip

    Je viens tout juste de trouver les sources pour émuler le clavier avec un joystick! Il se lance dans le systray. Logiquement, en associant keytomouse avec emulclavier, tu pourras obtenir ce que tu cherches en fait!
    • Télécharges les archives et extrait les EXE dans un dossier.
    • Lances ces deux EXE (avec un fichier BAT même si tu veux après).
    • Avec emulclavier, programme les touches de direction sur ton joy.
    • Le programme keytomouse devrait suivre...

    Ça marche? :

    Si tu as besoin d'émuler les boutons et la molette de la souris, je peux améliorer keytomouse.

    à+
    De retour parmis vous après 10 ans!!

  4. #4
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    http://tcharles.developpez.com/joystick/

    Nous allons maintenant mettre ces informations en oeuvre pour utiliser le joystick à la place de la souris...
    Si tu n'y arrives pas avec tout ça...

    J'allais oublié:
    IMPORTANT:

    • Merci de lire les règles du forum!
    • Chercher une réponse dans les FAQs
    • Merci de chercher un peu avant de poster dans le forum...
    • Ne poster qu'en dernier recours!
    Google.fr est ton ami!
    De retour parmis vous après 10 ans!!

  5. #5
    RLX
    RLX est déconnecté
    Membre du Club Avatar de RLX
    Inscrit en
    Octobre 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 51
    Points : 61
    Points
    61
    Par défaut
    Salut,
    merci à tous pour vos réponse!!!

    abignon -> je vais essayer de m'en sortir sans développer mon propre driver (ça me fera du boulot en moins!! ) enfin c'es surtout que j'en suis pas à ce niveau la encore!

    sub0 -> l'exe keytomouse fonctionne mais l'exe emulclavier j'ai pas réussi (peut être aussi parce que je suis pas doué) mais c'est pas grave je vais essayé de me débrouiller à faire quelque chose en C++ pour y arriver.
    Et en fait je crois que faut pas utiliser directinput comme est expliqué dans le tut de tcharles!!
    Pour résoudre un problème le plus dur n'est pas de trouver la solution, c'est de trouver celui qui la connait !!!!

  6. #6
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Désolé, je ne sais pas comment emulclavier fonctionne, je ne l'ai pas essayé (seul keytomouse est à moi en fait). Tu as vu qu'emulclavier se charge dans le systray. Le clic sur cet icône du systray avec le bouton droit fait apparaître un menu... Tout en haut de ce menu, tu as une option DirectInput que tu dois probablement activée... As-tu essayé?
    Es-tu sûr que ton gamepad est bien actif dans le gestionnaire de périphérique aussi? Sinon, c'est clair que ça ne marchera pas.

    Tu peux toujours signler le problème à l'auteur d'emulclavier et lui demander le mode d'emploi...

    Sinon, as-tu commencer à lire le tutoriel de Developpez.com?
    Ça à l'air de correspondre exactement avec ton projet...

    Bon courage, à+
    De retour parmis vous après 10 ans!!

  7. #7
    RLX
    RLX est déconnecté
    Membre du Club Avatar de RLX
    Inscrit en
    Octobre 2004
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 51
    Points : 61
    Points
    61
    Par défaut
    Oui j'avais bien vu l'icône dans le systray et le menu et j'ai essayé de le faire marché en définissant les touches mais j'ai pas trop compris le prog (mais je m'y suis pas trop attardé). Du côté de la manette y a pas de soucis non plus elle fonctionne bien et elle est bien détécté. Pour ce logicielle c'est pas trop grave je compte en créer un de mes propre main (même si j'y suis encore dessus à la retraite!!! ).

    Je suis en train de faire des essais avec le tutoriel, en fait je l'aivais déjà survoler et j'avais déjà commencer à faire quelque chose avec ça mais j'étais rester sur un problème c'est lorsque le curseur de la souris est sur la barre de titre de la fenêtre et qu'on presse le bouton de la manette il reste dans l'état MOUSEEVENTF_LEFTDOWN et on est obligé d'utiliser la souris pour en sortir (sinon ailleurs dans la fenêtre ça pose pas de problème). Et bêtement je suis rester sur ce problème, j'ai lu plusieurs forum et je me suis tourné vers les fonctions de directinput (qui d'ailleurs ne resolvent pas le problème et je ne sais toujours pas pourquoi mais le soucis vient de mouse_event ou sendinput et pas de la manette), mais l'autre soucis avec direct input c'est qu'il ne faut pas perdre le focus de la fenêtre sinon visiblement on perd l'acquisition de la manette. Et la étant un peu perdu j'ai laissé un mot sur le forum et comme tu m'as sagement guidé vers se tutoriel je m'aperçois qu'avec la fonction joySetCapture on à pas besoin du focus de la fenêtre du coup ça résoud le problème reste plus qu'a faire le reste!!!

    Et puis la je vais boire un coup parce que j'ai trop parlé et j'espère que personne ne s'est endormi!!!!
    Pour résoudre un problème le plus dur n'est pas de trouver la solution, c'est de trouver celui qui la connait !!!!

  8. #8
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Tu devras très certainement passer par un hook souris afin de simuler et garder le contrôle de la souris, quelque soit la situation... C'est pour cette raison qu'il est préférable finalement de ne pas passer par l'intermédiaire du clavier car il t'aurait alors fallu programmer le hook clavier et le faire cohabiter avec le hook souris, ce qui n'est pas chose du tout facile d'après ce que j'ai pu tester!

    Bon courage, à+
    De retour parmis vous après 10 ans!!

  9. #9
    Nouveau Candidat au Club
    Inscrit en
    Octobre 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut et les clique
    pouraige savoir comment clique apres avec keymouse et emile clavier svp

  10. #10
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Citation Envoyé par azacribe Voir le message
    pouraige savoir comment clique apres avec keymouse et emile clavier svp
    pas prévu dans cette démo mais facile à faire
    Contacte-moi par MP si nécessaire
    De retour parmis vous après 10 ans!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 13
    Dernier message: 25/05/2010, 07h44
  2. Réponses: 2
    Dernier message: 31/08/2009, 11h00
  3. Réponses: 5
    Dernier message: 13/09/2006, 16h47
  4. [Key.isDown] Controler une touche avec code ascii
    Par arnolem dans le forum Flash
    Réponses: 3
    Dernier message: 30/01/2006, 14h34
  5. [XP]controle a distance avec ip dynamique
    Par Dnx dans le forum Hardware
    Réponses: 1
    Dernier message: 08/02/2005, 21h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo