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 :

[FAQ] une seule instance de mon programme


Sujet :

C#

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut [FAQ] une seule instance de mon programme
    Bonjour,

    Je voudrais creer une seule instance de mon programme.
    Je vais dans la FAQ je trouve ceci:
    http://faqcsharp.developpez.com/?pag...gleinstanceapp

    Bon je me dis nickel.
    Mais ca marche pas chez moi

    J'ai creer un fichier dans lequel je copie la classe donner dans la FAQ.
    J'ajoute ce fichier dans mon projet via l'explorateur(Add Existing item).
    (Je compile, il manquait using System; au debut du fichier(il l'ont pas mis dans la FAQ c'est surement sous entendu mais bon quand on sait pas), donc je l'ajoute)

    Dans mon main je fais ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    static void Main()
            {
                // Test si l'application est deja lancer
                // En utilisant using, app.Dispose() est appelée automatiquement
                using (SingleInstanceApp app = new SingleInstanceApp("{APP_BOF_010207}"))
                {
                    if (app.IsRunning())
                    {
                        MessageBox.Show("Application déjà lancée");
                        return;
                    }
                }
     
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            }
    donc a priori c'est globalement la meme chose que dans la FAQ.

    Mais ca marche pas, je peut creer plusieurs instance de mon prog.
    un indice?

    Merci

  2. #2
    Membre expérimenté Avatar de LaChips
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 109
    Points : 1 482
    Points
    1 482
    Par défaut
    Bonjour,
    Dans les propriétés du projet sous Visual Studio 2005 tu peux cocher l'option : Application à Instance Unique
    Ingénieur Multimédia - TMM Communication

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut
    Salut,

    Je suis bien sous Visual 2005 mais je ne trouve pas ce que tu decris.
    Pourrais-tu preciser un peu(onglet, case a cocher ou liste)?

  4. #4
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    oui, bon, beh la FAQ elle est gentille (humour car je l'adore ).. mais il y a
    une solution 10000000000000 fois mieux.. et plus elegante et pas intrusive
    par rapport aux noms des mutex....


    Tu utilises la classe Process pour savoir si ton process existe déja...

    Va la, tu trouveras un super exemple issu du livre de smacchia... (ma bible)

    http://www.practicaldot.net/Chapter_5/Listing_5_2.htm

    Et voilou

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut
    Yes, ca marche! et j'ai ajouter ta bible dans mes liens

    Mais pourquoi le truc de la FAQ ne marche pas, je suis quand meme curieux de comprendre.

    PS: j'ai appris un nouveau mot: "intrusive"

  6. #6
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    en théorie le truc de la faq devrait fonctionner... apres, est-ce un problème
    de droit sur la machine, je l'ignore...

    ET j'ai pas le bouquin sous les yeux, mais dans son bouquin, smacchia je crois
    explique quels sont les inconvénients à utiliser la méthode du mutex

    Mais je ne le sais plus de tête

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut
    Je suis admin donc je pense pas que ca viennent des droits.

    Bon ben tu revise et tu me tiens au courant
    Boah c'est bon je le saurai bien un jour de toute facon.

    Merci de ton aide

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

Discussions similaires

  1. [FAQ C#] Comment ne lancer qu'une seule instance de mon application WPF ?
    Par Gregory.M dans le forum Windows Presentation Foundation
    Réponses: 16
    Dernier message: 18/11/2010, 18h08
  2. [FAQ] une seule instance de mon appli avec Mutex
    Par kacedda dans le forum MFC
    Réponses: 2
    Dernier message: 26/11/2008, 09h44
  3. Une seule instance du programme Win 2003 Serveur
    Par Erakis dans le forum Windows Forms
    Réponses: 5
    Dernier message: 20/11/2007, 14h57
  4. Une seule instance d'un même programme java
    Par Bobo59 dans le forum Général Java
    Réponses: 13
    Dernier message: 29/09/2006, 11h33

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