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 :

Lancer une appli c# via ligne de commande ne marche pas


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 65
    Par défaut Lancer une appli c# via ligne de commande ne marche pas
    Hello à tous,

    Voila j'ai un problème assez énervant : j'ai une appli C# publiée, je souhaite simplement passer un paramètre au MAIN pour ouvir en premier une winform différente selon ce paramètre... Cela parait très simple mais impossible de faire prendre en compte le paramètre par le programme quand je le lance en ligne de commande ou bien via un .bat. Pourtant le passage de ce paramètre lors du débug via l'interface dotnet (propriétés du projet -> paramètres) ne pose pas de souci...

    pour mémoire j'essaie via ligne de commande en faisant :

    c:/rep_publication/MONAPPLI.application -automation

    Si vous avez une piste ce serait sympa!

    Code du main :

    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
    19
    20
    21
    22
     
     
            [STAThread]
            static void Main(string[] args)
            {
                 //On vérifie qu'il y a bien un argument.
                if (args.Length > 0)
                {
                    foreach (string s in args)
                    {
                        if (s == "automation")
                        {
                            Application.Run(new FormAutomation());
                            break;
                        }
                    }
                }
                else
                    Application.Run(new FormBase());
     
            }
            #endregion

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 97
    Par défaut
    c:/rep_publication/MONAPPLI.application automation

    (sans le "-")

    Ou alors :

    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
    19
     [STAThread]
            static void Main(string[] args)
            {
                 //On vérifie qu'il y a bien un argument.
                if (args.Length > 0)
                {
                    foreach (string s in args)
                    {
                        if (s == "-automation")
                        {
                            Application.Run(new FormAutomation());
                            break;
                        }
                    }
                }
                else
                    Application.Run(new FormBase());
     
            }

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 65
    Par défaut
    Non malheureusement j'avais déja essayé sans le "-" cela ne change rien

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 97
    Par défaut
    Je ne vois pas alors, chez moi ce code marche très bien. Vérifie que tu exécutes le bon fichier, et éventuellement affiche le contenu de args au lancement du programme.

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 65
    Par défaut
    Oui je sais ce n'est absolument pas logique...ce code devrait marcher... J'ai vérifié et j'exécute bien le bon fichier...quand au nombre d'args il est égal a zero!!

    Il y a quelque chose qui doit interférer mais je ne comprend pas quoi

  6. #6
    Membre émérite
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Par défaut
    Si tu a visual studio, essaies en mode debug avec point d'arrêt dans le main pour voir ce qu'il s'y passe: tu peux mettre ton argument en paramètre... (propriété du projet => onglet "déboguer" => arguments de la ligne de commande)
    Y'a forcément un scmillblick. J'utilise aussi ce mécanisme dans une de mes applis.

Discussions similaires

  1. Lancer une application publiée en ligne de commande
    Par MadMax4 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 19/02/2013, 10h50
  2. Réponses: 0
    Dernier message: 03/02/2011, 13h54
  3. Comment lancer une appli Console vb.net en ligne de commande
    Par aiglelibre dans le forum Développement Windows
    Réponses: 2
    Dernier message: 08/10/2010, 15h29
  4. Lancer une application RCP en ligne de commande
    Par Fabien[ALT] dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 13/08/2008, 22h19
  5. Lancement d'une appli win32 en ligne de commande
    Par Invité(e) dans le forum Windows
    Réponses: 2
    Dernier message: 16/09/2005, 12h05

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