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 :

[Debutant]Donner le focus à une fenêtre - nom inconne (C++)


Sujet :

Windows

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2005
    Messages : 45
    Points : 28
    Points
    28
    Par défaut [Debutant]Donner le focus à une fenêtre - nom inconne (C++)
    Bonjours,

    Je n' y connait rien à l' API windows et je doit créer un programme qui bascule entre deux source audio (comme deux winamp).

    J' ai d' abord pensé à prendre le controle du clavier pour simuler un appuis sur les touche du clavier pour stopper le premier et demarrer le deuxiéme programme (au moyen des raccourcis clavier).

    Mais je ne peux avoir le handle ni de l' un ni de l' autre, le titre de la fenêtre changeant à chaque fois qu' un MP3 est lu.

    Comment faire?


    Je programme en C++ avec Dev-Cpp sous Windows XP

  2. #2
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 703
    Points
    10 703
    Billets dans le blog
    3
    Par défaut
    Tu peux utiliser le nom de la classe de fenêtre, Trouve le avec Spy++. Tu peux aussi te fier aux process si tu connais leur nom (EnumProcesses->GetProcessImageFileName + CreateToolhelp32Snapshot->EnumThreadWindows pour avoir le handle sur la fenêtre principale)

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2005
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Tu veux parler de winamp.exe? Mais comment faire si les deux processus ont le même nom?

    Edit :

    Je ne comprend pas ton exemple (je l' ai dit, je n' y connait rien)
    Comment avoir les different membres?

  4. #4
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 703
    Points
    10 703
    Billets dans le blog
    3
    Par défaut
    Ils ont peut être le même nom, mais pas le même PID.
    EnumProcesses te renvoie tous les PID. Pour chaque PID, GetProcessImageFileName te renvoie le nom de l'exe (si tu as les droits nécessaires, ce qui est le cas pour les process du même utilisateur). Reste plus qu'à chercher dans ce nom si y'a winamp, et ainsi tu as la liste des process winamp.
    Pour chacun d'entre eux, il te faut sa fenêtre principale. Ca se complique un peu.
    C'est poru ça que je te conseille de d'abord regarder du côté de la classe de fenêtre, c.a.d le 1° paramètre de FindWindow. Procure toi Spy++ et fait mumuse avec sa fonction de recherche, tu comprendras tout seul.
    A defaut de Spy++:
    http://www.foundstone.com/index.htm?subnav=resources/navigation.htm&subcontent=/resources/proddesc/showin.htm

Discussions similaires

  1. Donner le focus à une fenêtre non java
    Par Khyinn dans le forum Général Java
    Réponses: 2
    Dernier message: 15/05/2010, 12h40
  2. Réponses: 5
    Dernier message: 17/06/2006, 15h32
  3. [VB]donner le focus à une application déja ouverte ou fermée
    Par Nicko29 dans le forum VB 6 et antérieur
    Réponses: 17
    Dernier message: 21/01/2006, 14h28
  4. Réponses: 4
    Dernier message: 05/09/2005, 16h01
  5. [debutant]donner le focus
    Par adilou1981 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/06/2005, 17h30

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