Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

ProcessStartInfo.Arguments (Propiedad)

 

Obtiene o establece el conjunto de argumentos de línea de comandos que se van a usar al iniciar la aplicación.

Espacio de nombres:   System.Diagnostics
Ensamblado:  System (en System.dll)

[SettingsBindableAttribute(true)]
[TypeConverterAttribute("System.Diagnostics.Design.StringValueConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Arguments { get; set; }

Valor de propiedad

Type: System.String

Cadena única que contiene los argumentos para pasar a la aplicación de destino especificada en la propiedad FileName. El valor predeterminado es una cadena vacía (""). En Windows Vista y versiones anteriores del sistema operativo Windows, la longitud de los argumentos sumada a la longitud de la ruta de acceso completa al proceso debe ser inferior a 2080. En Windows 7 y versiones posteriores, la longitud debe ser inferior a 32.699.

Los argumentos se analizan e interpretan mediante la aplicación de destino, por lo que deben estar en línea con las expectativas de la aplicación. En las aplicaciones .NET, como se muestra en los ejemplos siguientes, los espacios se interpretan como una separación entre varios argumentos. Un solo argumento que incluye espacios debe incluirse entre comillas, pero las comillas no se llevan a cabo en la aplicación de destino. En las comillas incluidas en el argumento final analizado, se elude triplemente cada marca.

The first example below creates a small application (argsecho.exe) that echos its arguments to the console. The second example creates an application that invokes argsecho.exe to demonstrate different variations for the Arguments property.

// Place this code into a console project called ArgsEcho to build the argsecho.exe target

using System;

namespace StartArgs
{
    class ArgsEcho
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Received the following arguments:\n");

            for (var i = 0; i < args.Length; i++)
            {
                Console.WriteLine("[" + i + "] = " + args[i]);
            }

            Console.WriteLine("\nPress any key to exit");
            Console.ReadLine();
        }
    }
}
// Place this code into a console project called StartArgsEcho. It depends on the
// console application named argsecho.exe.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;

namespace StartArgsEcho
{
    class Program
    {
        static void Main()
        {
            ProcessStartInfo startInfo = new ProcessStartInfo("argsecho.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Normal;

            // Start with one argument.
            // Output of ArgsEcho:
            //  [0]=/a            
            startInfo.Arguments = "/a";
            Process.Start(startInfo);

            // Start with multiple arguments separated by spaces.
            // Output of ArgsEcho:
            //  [0] = /a
            //  [1] = /b
            //  [2] = c:\temp
            startInfo.Arguments = "/a /b c:\\temp";
            Process.Start(startInfo);

            // An argument with spaces inside quotes is interpreted as multiple arguments.
            // Output of ArgsEcho:
            //  [0] = /a
            //  [1] = literal string arg
            startInfo.Arguments = "/a \"literal string arg\"";
            Process.Start(startInfo);

            // An argument inside double quotes is interpreted as if the quote weren't there,
            // that is, as separate arguments. Equivalent verbatim string is @"/a /b:""string with quotes"""
            // Output of ArgsEcho:
            //  [0] = /a
            //  [1] = /b:string
            //  [2] = in
            //  [3] = double
            //  [4] = quotes
            startInfo.Arguments = "/a /b:\"\"string in double quotes\"\"";
            Process.Start(startInfo);

            // Triple-escape quotation marks to include the character in the final argument received
            // by the target process. Equivalent verbatim string: @"/a /b:""""""quoted string""""""";
            //  [0] = /a
            //  [1] = /b:"quoted string"
            startInfo.Arguments = "/a /b:\"\"\"quoted string\"\"\"";
            Process.Start(startInfo);
        }
    }
}

.NET Framework
Disponible desde 1.1
Volver al principio
Mostrar: