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 :

Boite de dialogue propriétés joystick


Sujet :

Windows

  1. #1
    Membre émérite
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Points : 2 274
    Points
    2 274
    Par défaut Boite de dialogue propriétés joystick
    Salut tout le monde,

    J'ai un petit souci...

    je voudrais reproduire le fonctionnement de joy.cpl, "module control panel" et donc lancer depuis une application standard la boite de dialogue "propriétés du contrôleur de jeu"...

    à titre d'illustration



    Pour cela je charge la dll "com server" associée au contrôleur avec l'api cocreateinstance() puis un appel queryinterface(). Ensuite je fais remplir les structures DIGCSHEETINFO et DIGCPAGEINFO par des appels aux fonctions membres getpageinfo() et getsheetinfo() de l'interface idigamecntrlpropsheet du module précédemment chargée. Avec ces structures, je peuple à nouveau deux autres structures, PROPSHEETHEADER et PROPSHEETPAGE (en fait un tableau de ce type) pour finir par un appel à l'api propertysheet(), tout se passe conformément aux attentes jusqu'à ce que le module en question (la dll com server) tente un appel à dinput8.dll, sauf que c'est pas possible, car le registre vaut 0 alors qu'il devrait "pointer" vers l'adresse d'une fonction de direct input me disait mon débogueur... j'ai dû oublier quelque chose en amont, mais je sais pas quoi... J'avais d'abord cru à un problème de zone ou segment d'adressage de PROPSHEETPAGE mais il n'en est rien.

    Je pourrais en reprendre l'analyse seulement la semaine prochaine, mais là ça me turlupine quand même alors que je suis sur autre chose, ça provoque des interférences... Voilà, si ça vous parle...

    Merci...

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Il doit y avoir un truc à faire du genre initialiser DirectX...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre émérite
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Points : 2 274
    Points
    2 274
    Par défaut
    Salut Médinoc, merci pour ta réponse.

    Mais ça ne vient pas de là, car l'initialisation de direct input est faite dès le démarrage du programme, de même qu'un createdevice...

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/05/2015, 11h24
  2. Import de propriété dans boite de dialogue
    Par AKKA_31 dans le forum VBA Project
    Réponses: 0
    Dernier message: 07/07/2011, 09h31
  3. Affichage d'une boite de dialogue nonmodale avec MFC
    Par the.cable.guy dans le forum Windows
    Réponses: 3
    Dernier message: 04/07/2003, 17h59
  4. Réponses: 5
    Dernier message: 04/04/2003, 15h02
  5. Comment cree une boite de dialogue parcourir
    Par kenshi dans le forum MFC
    Réponses: 5
    Dernier message: 06/01/2003, 10h30

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