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 :

Savoir qu'une application est lancée depuis le debugueur


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 12
    Points : 8
    Points
    8
    Par défaut Savoir qu'une application est lancée depuis le debugueur
    Bonjour,

    Y a-t-il un moyen par code, plus ou moins prévu, pour qu'une application sache qu'elle est lancée depuis Visual ?
    Si vous avez des idées, je suis preneur (je ne cherche pas quelque chose à renseigner à chaque fois pour chaque application comme un argument de main, mais qq chose de plus automatique).

    Merci !

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,

    Citation Envoyé par robosara Voir le message
    ...Y a-t-il un moyen par code, plus ou moins prévu, pour qu'une application sache qu'elle est lancée depuis Visual ?...
    Avec les directives de compilation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
          #if DEBUG
                label1.Text = "en debug";
          #else
                label1.Text = "executable";
          #endif
    A+, Hervé
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par rv26t Voir le message
    Avec les directives de compilation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
          #if DEBUG
                label1.Text = "en debug";
          #else
                label1.Text = "executable";
          #endif
    A+, Hervé
    Ca ne prouve rien du tout... ça indique seulement si l'assembly est compilé en Debug ou en Release. On peut très bien exécuter un assembly debug hors de Visual Studio, ou déboguer dans VS un assembly compilé en Release (si les fichiers PDB sont présents)

    Il est possible de savoir si un debugger (VS ou autre) est attaché au processus, à l'aide de la propriété Debugger.IsAttached. Par contre ça n'indique pas que l'application a été "lancée depuis Visual Studio" : il est possible que le debugger ait été attaché au processus après le démarrage de l'application, ou que ce soit un debugger autre que VS (mais je suppose que ça n'a pas vraiment d'importance dans ton cas)

    Il est également possible d'examiner le nom de l'exécutable : s'il se termine par ".vshost.exe", c'est qu'il est a priori lancé depuis VS. Mais encore une fois, ce n'est pas sûr à 100% : l'exécutable ne s'appelera comme ça que si le processus d'hébergement de VS est activé (c'est la cas par défaut)

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Bonjour

    Citation Envoyé par robosara Voir le message
    Y a-t-il un moyen par code, plus ou moins prévu, pour qu'une application sache qu'elle est lancée depuis Visual ?
    Tu peux utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(System.Diagnostics.Debugger.IsAttached)
    {
    ...
    }
    EDIT : déjà proposé par tomlev, désolé.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

Discussions similaires

  1. Réponses: 0
    Dernier message: 15/10/2012, 17h39
  2. Réponses: 2
    Dernier message: 05/04/2012, 14h06
  3. Savoir si une application est lancée
    Par hebus44 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 10/08/2008, 16h02
  4. savoir si une application est lancée.
    Par ataya dans le forum Forms
    Réponses: 0
    Dernier message: 27/02/2008, 16h25
  5. Comment savoir si une application est lancée ?
    Par Teddy dans le forum Delphi
    Réponses: 2
    Dernier message: 02/07/2006, 19h33

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