Esta documentación está archivada y no tiene mantenimiento.

ProcessStartInfo.UseShellExecute (Propiedad)

Actualización: noviembre 2007

Obtiene o establece un valor que indica si se va a usar el shell del sistema operativo para iniciar el proceso.

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

public bool UseShellExecute { get; set; }
/** @property */
public boolean get_UseShellExecute()
/** @property */
public  void set_UseShellExecute(boolean value)

public function get UseShellExecute () : boolean
public function set UseShellExecute (value : boolean)

Valor de propiedad

Tipo: System.Boolean
Es true para usar el shell al iniciar el proceso; de lo contrario, el proceso se crea directamente desde el archivo ejecutable. El valor predeterminado es true.

Si se establece esta propiedad en false, es posible redirigir las secuencias de entrada, salida y error.

k7z89z41.alert_note(es-es,VS.90).gifNota:

   UseShellExecute debe ser false si la propiedad UserName no es null o una cadena vacía; de lo contrario, se inicia una excepción InvalidOperationException al llamar al método Process.Start(ProcessStartInfo).

Cuando se usa el shell del sistema operativo para iniciar procesos, se puede iniciar cualquier documento (cualquier tipo de archivo registrado que tenga asociado un archivo ejecutable con una acción de apertura predeterminada) y realizar operaciones en el archivo, como imprimirlo, con el componente Process. Cuando UseShellExecute es false, sólo se pueden iniciar archivos ejecutables con el componente Process.

k7z89z41.alert_note(es-es,VS.90).gifNota:

El valor de UseShellExecute debe ser true si se establece el valor de la propiedad ErrorDialog en true.

La propiedad WorkingDirectory se comporta de forma distinta si UseShellExecute es true o si UseShellExecute es false. Cuando UseShellExecute es true, la propiedad WorkingDirectory especifica la ubicación del ejecutable. Si WorkingDirectory es una cadena vacía, se entiende que el directorio actual contiene el ejecutable.

Cuando UseShellExecute es false, la propiedad WorkingDirectory no se utiliza para buscar el ejecutable. En su lugar, el proceso que se inicia utiliza esta propiedad y sólo tiene significado en el contexto del nuevo proceso.

Process compiler = new Process();
compiler.StartInfo.FileName = "csc.exe";
compiler.StartInfo.Arguments = "/r:System.dll /out:sample.exe stdstr.cs";
compiler.StartInfo.UseShellExecute = false;
compiler.StartInfo.RedirectStandardOutput = true;
compiler.Start();    

Console.WriteLine(compiler.StandardOutput.ReadToEnd());

compiler.WaitForExit();


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 3.5, 2.0
Mostrar: