2011-01-24 12 views

Respuesta

13

Una forma sencilla:

string[] args = Environment.GetCommandLineArgs(); 

alternativa usted puede cambiar el Principal de guardia para incluir parámetros (en Program.cs):

static void Main(string[] args) 
{ 

Usted luego tendrá que pasarlo a su Formulario y cambiar el constructor de su formulario en consecuencia (suponiendo que es donde necesita el args):

public Form1(string[] args) 
{ 
+0

¡El primero funciona muy bien! También descubrí que sería mejor detectar si tiene más de 1 argumento, luego obtener el que está en el índice 1. – Kaitlyn

+0

Genial. :) A menudo he usado Nini para lectura de configuraciones y análisis de línea de comandos: http://nini.sourceforge.net/ –

+0

Parece bastante interesante :) Parece como si estuviera muerto, con la actualización en 2010 .../ – Kaitlyn

1

Cuando crea una aplicación WinForm en C#, el editor crea un archivo Program.cs para usted. Ahí es donde se encuentra main y ahí es donde están disponibles los argumentos.

Es un poco IDE "mágico" por falta de un término mejor. Todavía hay una función 'principal', simplemente lanza una instancia de su formulario principal y cualquier otra cosa que se requiera para usted. Abra ese archivo y eche un vistazo.

1

Necesita cambiar el constructor de formulario para aceptar un parámetro args.

por ejemplo:

public void Form1(string[] args) 
{ 

} 
+0

La respuesta de stefan también es correcta. ¿Estás pasando args a la aplicación o formulario? – WraithNath

+3

Es la Principal() - entrada que toma args, no el Formulario. –

+0

@Tedd - gracias, me di cuenta de que en popa – WraithNath

Cuestiones relacionadas