none
Passare argomenti ad una windows application RRS feed

  • Domanda

  • Ciao a tutti, ma è possibile avviare un'applicazione windows form da una riga di comanando con degli argomenti ?
    E poi, eventualmente, dentro l'evento load come prendere questi argomenti passati dalla riga di comando ?

    O sto dicendo sciocchezze ?

    Grazie

    mercoledì 28 novembre 2012 15:49

Risposte

Tutte le risposte

  • Hello kio2008,
    puoi utilizzare la proprietà My.Application.CommandLineArgs.
     
     
    • Contrassegnato come risposta kio2008 mercoledì 28 novembre 2012 16:42
    mercoledì 28 novembre 2012 16:11
    Moderatore
  • Ciao a tutti, ma è possibile avviare un'applicazione windows form da una riga di comanando con degli argomenti ?
    E poi, eventualmente, dentro l'evento load come prendere questi argomenti passati dalla riga di comando ?

    O sto dicendo sciocchezze ?

    Grazie

    Ciao,

    si puoi avviare un programma Windows Forms da command line con parametri ma devi aggiugere all' applicazione la possibilità di ricevere i parametri in questo modo:

     string[] args = Environment.GetCommandLineArgs();

    Aggiungi questo riga nel classe statica Program.cs/Program.vb nel metodo Main.

    Maurizio


    Maurizio Cinti: [MCT, MCPD]
    Blog: http://mauriziocinti.com
    Twitter: @mcinti78
    LinkedIn: it.linkedin.com/in/mauriziocinti

    mercoledì 28 novembre 2012 16:23
  • Hello Maurizio,
    in realtà non c'è bisogno di avviare l'app con un main.
    Nella form hai accesso alla proprietà GetCommandLineArgs della System.Environment.
    Attenzione perchè in questa, a differenza della My.Application.CommandLIneArgs,
    trovi anche il nome dell'eseguibile completo di path (come primo argomento).
     
     
    mercoledì 28 novembre 2012 16:37
    Moderatore
  • Hello Maurizio,
    in realtà non c'è bisogno di avviare l'app con un main.
    Nella form hai accesso alla proprietà GetCommandLineArgs della System.Environment.
    Attenzione perchè in questa, a differenza della My.Application.CommandLIneArgs,
    trovi anche il nome dell'eseguibile completo di path (come primo argomento).

    Ciao,

    beh! non che intendevo avviare l'App da un main .. ma (almeno per C#) la classe Program statica con il main come entry di avvio di un form è presente ... quindi la consigliavo come punto iniziale ... tutto qui.


    Maurizio Cinti: [MCT, MCPD]
    Blog: http://mauriziocinti.com
    Twitter: @mcinti78
    LinkedIn: it.linkedin.com/in/mauriziocinti

    mercoledì 28 novembre 2012 16:42
  • Hello Maurizio,
    si, si, era chiaro ma in VB.Net non c'è la classe Program (o, almeno, non
    è obbligatoria).
    Volevo solo precisare che può utilizzare il tuo consiglio direttamente nella
    form (non era chiaro e volevo evitare fraintendimenti da parte di chi ha
    posto la domanda).
    Tutto qui.
     
     
    mercoledì 28 novembre 2012 18:29
    Moderatore