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

C++ Discussion :

Identifier une fenêtre qui change tout le temps de titre


Sujet :

C++

  1. #1
    Membre actif
    Profil pro
    Collégien
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Par défaut Identifier une fenêtre qui change tout le temps de titre
    Beau jour tout le monde.

    J'ai une question qui me tracasse et apparemment je ne trouve pas la solution par moi-même.
    Cela concerne les Winapi en général avec C++;
    D'habitue j'identifie une fenêtre active précise d'une application tierce avec son titre, en combinant FindWindow & GetWindowText,
    le problème c'est comment faire pour identifier la dite fenêtre qui cette fois-ci change de titre aléatoirement sachant que la fenêtre est parmi d'autres d'une même application.
    Y'aurait-il un identifiant unique pour chaque fenêtre qui ne change pas à chaque démarrage de l'application ?



    Merci d'avance.

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 446
    Par défaut
    D'habitue j'identifie une fenêtre active précise d'une application tierce avec son titre
    Déjà, ça sent pas bon.

    Y'aurait-il un identifiant unique pour chaque fenêtre
    Oui, les Handle de fenêtre, c'est fait pour.

    pas à chaque démarrage de l'application ?
    Bin non, si tu lances 2 fois la même application en même temps, faut bien que chaque processus est sa propre fenêtre, quand même.

    On gros, ta méthode est bancale.

    Pour récupérer la liste des fenêtres principales des applications :
    https://msdn.microsoft.com/fr-fr/lib...or=-2147217396

    Pour récupérer le nom de l'exe depuis un HWND :
    http://stackoverflow.com/questions/2...me-of-a-window

    Mais c'est quoi ton vrai besoin ?

  3. #3
    Membre actif
    Profil pro
    Collégien
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Par défaut
    Merci pour vos orientations

    En effet, j'aimerai ajouter des fonctionnalités visuels à l'application cible, comme une petite fenêtre s'affichant et se superposant uniquement à une des fenêtres[la fenêtre active] de la dite application.
    Dans d'autres cas, la nouvelle fenêtre reste invisible.
    Je pouvais identifier la fenêtre active par son titre, mais dans ce cas là,
    la dite fenêtre change de titre aléatoirement à chaque redémarrage de l'application.
    Par exemple:
    CGUIEmpty 0075823 à CGUIEmpty 003A5232 ...etc.

    Je cible le système Windows CE 6.0 j'utilise le C++ & MFC.

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 392
    Par défaut
    Quelle est la classe de fenêtre de ces fenêtres et est-elle unique?
    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.

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 446
    Par défaut
    Je ne suis pas sûr que cette primitive existe en WinCE 6 :
    https://msdn.microsoft.com/fr-fr/lib...or=-2147217396
    Cela permet d'avoir l'handle de la fenêtre active pour un thread donné.

  6. #6
    Membre actif
    Profil pro
    Collégien
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Quelle est la classe de fenêtre de ces fenêtres et est-elle unique?
    Beau soir,
    Si je me trompe pas, la classe principale de ces fenêtres à un titre inchangé qui est AppMain et les sous-fenêtres se génèrent avec une constante CGUIEmpty + un long chiffre aléatoire
    comme; CGUIEmpty 0075823, CGUIEmpty 003A5232 ...etc.

    Pour l'instant, j'identifie la dite fenêtre en ayant la couleur d'un pixel sur l'écran avec GetPixel,
    cela marche bien comme il le faut, mais cela fait tâche de cette façon.
    Je ne sais pas si y a un moyen plus propre que cela.

    @bacelar, Je vais voir votre lien

Discussions similaires

  1. une alert qui change tout
    Par fraoustin dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/06/2013, 19h08
  2. Réponses: 2
    Dernier message: 01/12/2009, 07h58
  3. une commande qui change tout!
    Par GR3lh442kR dans le forum SDL
    Réponses: 4
    Dernier message: 02/09/2009, 20h28
  4. Réponses: 8
    Dernier message: 18/06/2008, 17h56
  5. Réponses: 16
    Dernier message: 19/02/2008, 14h10

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