2009-02-12 11 views
7

C#: Quiero pasar mensajes como una ruta de archivo a mi aplicación de formularios, como una aplicación de consola, ¿cómo podría hacerlo?C#: Quiero pasar mensajes como una ruta de archivo a mi aplicación de formularios como una aplicación de consola, ¿cómo lo haría?

Me dijeron que necesitaba encontrar mi método principal para agregar string [] args, pero no sabría cuál sería en Windows Forms. ¿Cuál sería mi método principal en la aplicación de formularios Windows C?

Respuesta

8

Ok, string [] args = Environment.GetCommandLineArgs() es una mejor opción. Pero mantendré la siguiente respuesta como alternativa.

Busque un archivo llamado Program.cs que contienen el siguiente fragmento de código ...

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()); 
    } 
} 

y cambiar eso a

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()); 
    } 
} 

luego acceder a los argumentos de línea de comandos de su formulario de ...

Program.CommandLineArgs 
2

Si desea obtener acceso a los parámetros de línea de comandos, utilice Environment.CommandLine

string args = Environment.CommandLine; 

Usted puede hacer esto si usted tiene o no un método principal con [] args de cadena en su código.

2

Hay una Main(), que está dentro de Program.cs. Pero en la aplicación WinForms Environment.GetCommandLineArgs() será una mejor opción.

2

en su constructor público, usa la siguiente:

string [] args = Environment.GetCommandLineArgs();

esto le dará una matriz de cadenas de los argumentos.

3

Su método Main() se encuentra en Program.cs archivo, typi camente como esto:

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

debe modificar la Main() a lo siguiente:

static void Main(string[] args) 

Vas a tener acceso a los argumentos pasados.

Además, puede acceder a los argumentos usando Environment.GetCommandLineArgs()

Cuestiones relacionadas