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 :

[C#] Une seule instance et premier plan pour mon application


Sujet :

C#

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 77
    Points : 83
    Points
    83
    Par défaut [C#] Une seule instance et premier plan pour mon application
    Bonjour à tous,

    Voila j'ai une application pour laquel je n'ai autorisé qu'une seule instance, afin d'éviter quelle soit lancé plusieurs fois.

    Cependant j'ai un petit problème. Cette application doit tourner sur un PC dépourvu de barre de taches, de menu démarrer, etc etc ..

    Elle se lance depuis un bouton situé sur une application en plein écran.

    1er Lancement pas de problème, mon appli. vient se placé devant l'autre.

    Néanmoins, si on retourne sur l'application initial, mon application disparait derrière. Normal.

    Si on clic a nouveau sur le bouton pour lancer mon application, un MessageBox m'indique que l'application est déjà lancer.

    J'aimerais pouvoir a ce moment la, a la place d'indiquer que l'appli. est déjà lancer, chargé la fenêtre de mon programme en premier plan ..


    Je sais pas si j'ai été assez clair, mais si vous avez des infos ou une solution je suis preneur.

    Merci d'avance.

  2. #2
    Membre expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Points : 3 015
    Points
    3 015
    Par défaut
    Salut,

    En faisant de l'interop ça doit être possible :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [DllImport("user32.dll")]
    [return: MarshalAs(UnmanagedType.Bool)]
    static extern bool SetForegroundWindow(IntPtr hWnd);

    Tu pourras récupérer le handle de ta window comme ça par exemple :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Diagnostics.Process.GetProcessesByName("ProcessName").Handle

    A tester...

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 77
    Points : 83
    Points
    83
    Par défaut
    Je vais tester ça.

    Merci de ta réponse.

Discussions similaires

  1. une seule instance pour plusieurs procédures (def)
    Par henriclaessens dans le forum Général Python
    Réponses: 2
    Dernier message: 16/09/2013, 16h36
  2. Réponses: 20
    Dernier message: 12/02/2010, 15h35
  3. Réponses: 3
    Dernier message: 06/02/2009, 16h22
  4. Réponses: 6
    Dernier message: 14/06/2006, 09h56
  5. forcer une fenetre à etre au premier plan jusqu'a ...
    Par peppena dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 22/12/2003, 17h14

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