Process.Start (Método) (String, String, SecureString, String)
Ensamblado: System (en system.dll)
public static Process Start ( string fileName, string userName, SecureString password, string domain )
public static Process Start ( String fileName, String userName, SecureString password, String domain )
public static function Start ( fileName : String, userName : String, password : SecureString, domain : String ) : Process
Parámetros
- fileName
Nombre de un archivo de aplicación que se va a ejecutar en el proceso.
- userName
Nombre de usuario que se va a utilizar al iniciarse el proceso.
- password
SecureString que contiene la contraseña que se va a utilizar al iniciarse el proceso.
- domain
Dominio que se va a utilizar al iniciarse el proceso.
Valor devuelto
Nuevo componente Process que se asocia al recurso del proceso o referencia de objeto null (Nothing en Visual Basic) si no se inicia ningún recurso de proceso (por ejemplo, si se reutiliza un proceso existente).Utilice esta sobrecarga para crear un nuevo proceso y su subproceso principal especificando el nombre de archivo, el nombre de usuario, la contraseña y el dominio. El nuevo proceso ejecutará el archivo ejecutable especificado en el contexto de seguridad de las credenciales especificadas (usuario, dominio y contraseña). Si el proceso ya está en ejecución, no se iniciará ningún recurso de proceso adicional. En lugar de esto, se reutiliza el recurso de proceso existente y no se crea un nuevo componente Process. En tal caso, en lugar de devolver un nuevo componente Process, Start devuelve referencia de objeto null (Nothing en Visual Basic) al procedimiento que realiza la llamada.
Esta sobrecarga permite iniciar un proceso sin crear primero una nueva instancia de Process. La sobrecarga es una alternativa a los pasos explícitos para crear una nueva instancia de Process, establecer las propiedades FileName, UserName, Password y Domain de la propiedad StartInfo y llamar al método Start para la instancia de Process.
Del mismo modo que el cuadro de diálogo Ejecutar acepta un nombre de archivo ejecutable con y sin extensión .exe, la extensión .exe es opcional en el parámetro fileName. Por ejemplo, se puede establecer el parámetro fileName en "Notepad.exe" o "Notepad". Si el parámetro fileName representa un archivo ejecutable, el parámetro arguments podría representar un archivo sobre el que se va a actuar como, por ejemplo, el archivo de texto de Notepad.exe myfile.txt.
Nota |
|---|
| El nombre de archivo debe representar un archivo ejecutable en las sobrecargas Start que tienen los parámetros userName, password y domain. |
En el ejemplo de código siguiente se muestra el uso de esta sobrecarga para iniciar un archivo ejecutable y se muestra también cómo se produce una excepción Win32Exception cuando se intenta iniciar una aplicación asociada a un archivo no ejecutable.
// This sample requires a text.txt file and a HelloWorld.exe file in the // My Documents folder to successfully execute. using System; using System.Diagnostics; using System.Security; using System.ComponentModel; namespace StartDemo { class Program { static void Main(string[] args) { Console.WriteLine("Enter your domain."); string domain = Console.ReadLine(); Console.WriteLine("Enter you user name."); string uname = Console.ReadLine(); Console.WriteLine("Enter your password (Caution, password won't be hidden)."); SecureString password = new SecureString(); foreach (char c in Console.ReadLine()) password.AppendChar(c); string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\"; Process.Start(path + "HelloWorld.exe", uname, password, domain); try { // The following call to Start succeeds. Process.Start(path + "Text.txt"); // Attempting to start in a shell using this Start overload fails. // The following call to Start results in the following error: // The specified executable is not a valid Win32 application. Process.Start(path + "Text.txt", uname, password, domain); } catch (Win32Exception ex) { Console.WriteLine(ex.Message); } } } }
- SecurityPermission para llamar a los miembros de Process. Valor de la petición: LinkDemand; Conjuntos de permisos con nombre: FullTrust.
Windows 98, Windows 2000 SP4, Windows Millennium, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition
.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.
Nota