2009-02-12 5 views
7

C#: Je veux passer des messages comme un chemin de fichier à mon application de formulaires comme une application de console, comment ferais-je cela?C#: Je veux passer des messages comme un chemin de fichier à mon application de formulaires comme une application de console, comment ferais-je cela?

On m'a dit que j'avais besoin de trouver ma méthode principale pour ajouter des arguments chaîne [], mais je ne saurais pas lequel serait dans Windows Forms. Quelle serait ma méthode principale dans l'application C# windows forms?

Répondre

8

Ok, string [] args = Environment.GetCommandLineArgs() est une meilleure option. Mais je vais garder la réponse suivante comme une alternative à cela.

Rechercher un fichier nommé Program.cs contenant le fragment de code suivant ...

static class Program 
{ 
    /// <summary> 
    /// The main entry point for the application. 
    /// </summary> 
    [STAThread] 
    static void Main() 
    { 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.Run(new Form1()); 
    } 
} 

et changer cela pour

static class Program 
{ 

    public static string[] CommandLineArgs { get; private set;} 

    /// <summary> 
    /// The main entry point for the application. 
    /// </summary> 
    [STAThread] 
    static void Main(string[] args) 
    { 
     CommandLineArgs = args; 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.Run(new Form1()); 
    } 
} 

ensuite accéder à la ligne de commande args de votre forme ...

Program.CommandLineArgs 
2

Si vous souhaitez accéder aux paramètres de ligne de commande, utilisez Environment.CommandLine

string args = Environment.CommandLine; 

Vous pouvez le faire si vous avez ou non une méthode principale avec string [] args dans votre code.

2

Il y en a un Main(), qui se trouve à l'intérieur Program.cs. Mais dans l'application WinForms Environment.GetCommandLineArgs() sera une meilleure option.

2

dans votre constructeur public, utilisez les touches suivantes:

string [] args = Environment.GetCommandLineArgs(); Cela vous donnera un tableau de chaînes des arguments.

3

Votre méthode Main() se trouve dans le fichier Program.cs, Typi Cally comme ceci:

[STAThread] 
static void Main() 
{ 
    Application.EnableVisualStyles(); 
    Application.SetCompatibleTextRenderingDefault(false); 
    Application.Run(new Form1()); 
} 

Vous devez modifier les Main() à ce qui suit:

static void Main(string[] args) 

Vous aurez accès à des arguments passés. De plus, vous pouvez accéder aux arguments en utilisant Environment.GetCommandLineArgs()

Questions connexes