.net - retorno - para que sirve int argc char*argv[]
Cómo acceder a los parámetros de la línea de comandos fuera de Main en C# (5)
Crea una clase que contenga las opciones de tu aplicación. En el método principal, cree una instancia de esa clase, inicialícela con los argumentos de la línea de comando y pásela a las clases que la necesitan.
Alternativamente, puede hacer que la clase se inicialice en cualquier momento a partir de entonces creando un método CustomConfigClass.Create()
que use Environment.GetCommandLineArgs()
.
La primera opción sería mi recomendación, ya que hace que la clase sea más fácil de preparar para las pruebas unitarias y el cambio a un método alternativo de configuración en una fecha posterior sin interrumpir la aplicación debido a una dependencia en la línea de comandos.
Estoy escribiendo una clase .NET que necesita analizar la línea de comandos del proceso. No quiero tener una dependencia entre el método Main () y esa clase. ¿Cómo puede la clase acceder a la línea de comando?
Si usa .NET Compact Framework , el método Environment.GetCommandLineArgs () no se implementa y System.Diagnostics.Process.GetCurrentProcess (). StartInfo.Arguments devuelve siempre una cadena vacía, por lo que debe usar la función principal y pasar argumentos a las demás clases. .
Un ejemplo :
[MTAThread]
static void Main(String[] commandLineArguments)
{
CommandLineHelper.parse(commandLineArguments);
}
public static class CommandLineHelper
{
public static void parse(String[] commandLineArguments) {
// add your code here
}
}
String [] myStr = Environment.GetCommandLineArgs ();
Siempre es bueno completar el ejemplo.
Llame a Environment.GetCommandLineArgs()
.
System.Diagnostics.Process.GetCurrentProcess().StartInfo.Arguments