Process.Start Process.Start Process.Start Process.Start Method

Definizione

Avvia una risorsa di processo e la associa a un componente Process.Starts a process resource and associates it with a Process component.

Overload

Start() Start() Start() Start()

Avvia (o riutilizza) la risorsa di processo specificata dalla proprietà StartInfo di questo componente Process e la associa al componente.Starts (or reuses) the process resource that is specified by the StartInfo property of this Process component and associates it with the component.

Start(ProcessStartInfo) Start(ProcessStartInfo) Start(ProcessStartInfo) Start(ProcessStartInfo)

Avvia la risorsa di processo specificata dal parametro contenente le informazioni di avvio del processo (ad esempio, il nome file del processo da avviare) e associa la risorsa a un nuovo componente Process.Starts the process resource that is specified by the parameter containing process start information (for example, the file name of the process to start) and associates the resource with a new Process component.

Start(String) Start(String) Start(String) Start(String)

Avvia una risorsa di processo specificando il nome di un documento o un file di applicazione e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of a document or application file and associates the resource with a new Process component.

Start(String, String) Start(String, String) Start(String, String) Start(String, String)

Avvia una risorsa di processo specificando il nome di un'applicazione e un insieme di argomenti della riga di comando e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of an application and a set of command-line arguments, and associates the resource with a new Process component.

Start(String, String, SecureString, String) Start(String, String, SecureString, String) Start(String, String, SecureString, String) Start(String, String, SecureString, String)

Avvia una risorsa di processo specificando il nome di un'applicazione, un nome utente, una password e un dominio e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of an application, a user name, a password, and a domain and associates the resource with a new Process component.

Start(String, String, String, SecureString, String) Start(String, String, String, SecureString, String) Start(String, String, String, SecureString, String) Start(String, String, String, SecureString, String)

Avvia una risorsa di processo specificando il nome di un'applicazione e un insieme di argomenti della riga di comando, un nome utente, una password e un dominio, e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of an application, a set of command-line arguments, a user name, a password, and a domain and associates the resource with a new Process component.

Start() Start() Start() Start()

Avvia (o riutilizza) la risorsa di processo specificata dalla proprietà StartInfo di questo componente Process e la associa al componente.Starts (or reuses) the process resource that is specified by the StartInfo property of this Process component and associates it with the component.

public:
 bool Start();
public bool Start ();
member this.Start : unit -> bool
Public Function Start () As Boolean

Restituisce

true se viene avviata una risorsa di processo, false se non viene avviata alcuna risorsa di processo nuova (ad esempio, se è stato riutilizzato un processo esistente).true if a process resource is started; false if no new process resource is started (for example, if an existing process is reused).

Eccezioni

Non è stato specificato alcun nome file nella proprietà StartInfo del componente Process.No file name was specified in the Process component's StartInfo. -oppure- Il membro UseShellExecute della proprietà StartInfo è true mentre RedirectStandardInput, RedirectStandardOutput o RedirectStandardError è true.-or- The UseShellExecute member of the StartInfo property is true while RedirectStandardInput, RedirectStandardOutput, or RedirectStandardError is true.

Si è verificato un errore durante l'apertura del file associato.There was an error in opening the associated file.

L'oggetto del processo è già stato eliminato.The process object has already been disposed.

Metodo non supportato nei sistemi operativi senza supporto della shell, ad esempio Nano Server (solo .NET Core).Method not supported on operating systems without shell support such as Nano Server (.NET Core only).

Esempi

Nell'esempio seguente viene utilizzata un'istanza della Process classe per avviare un processo.The following example uses an instance of the Process class to start a process.

#using <System.dll>
using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

int main()
{
    Process^ myProcess = gcnew Process;

    try
    {
        myProcess->StartInfo->UseShellExecute = false;
        // You can start any process, HelloWorld is a do-nothing example.
        myProcess->StartInfo->FileName = "C:\\HelloWorld.exe";
        myProcess->StartInfo->CreateNoWindow = true;
        myProcess->Start();
        // This code assumes the process you are starting will terminate itself. 
        // Given that is is started without a window so you cannot terminate it 
        // on the desktop, it must terminate itself or you can do it programmatically
        // from this application using the Kill method.
    }
    catch ( Exception^ e ) 
    {
        Console::WriteLine( e->Message );
    }
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        public static void Main()
        {
            try
            {
                using (Process myProcess = new Process())
                {
                    myProcess.StartInfo.UseShellExecute = false;
                    // You can start any process, HelloWorld is a do-nothing example.
                    myProcess.StartInfo.FileName = "C:\\HelloWorld.exe";
                    myProcess.StartInfo.CreateNoWindow = true;
                    myProcess.Start();
                    // This code assumes the process you are starting will terminate itself. 
                    // Given that is is started without a window so you cannot terminate it 
                    // on the desktop, it must terminate itself or you can do it programmatically
                    // from this application using the Kill method.
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
    }
}
Imports System
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        Public Shared Sub Main()
            Try
                Using myProcess As New Process()

                    myProcess.StartInfo.UseShellExecute = False
                    ' You can start any process, HelloWorld is a do-nothing example.
                    myProcess.StartInfo.FileName = "C:\\HelloWorld.exe"
                    myProcess.StartInfo.CreateNoWindow = True
                    myProcess.Start()
                    ' This code assumes the process you are starting will terminate itself. 
                    ' Given that is is started without a window so you cannot terminate it 
                    ' on the desktop, it must terminate itself or you can do it programmatically
                    ' from this application using the Kill method.
                End Using
            Catch e As Exception
                Console.WriteLine((e.Message))
            End Try
        End Sub 'Main
    End Class
End Namespace

Commenti

Utilizzare questo overload per avviare una risorsa di processo e associarla al componente Process corrente.Use this overload to start a process resource and associate it with the current Process component. Il valore true restituito indica che è stata avviata una nuova risorsa di processo.The return value true indicates that a new process resource was started. Se la risorsa StartInfo di processo specificata dal FileName membro della proprietà è già in esecuzione nel computer, non viene avviata alcuna risorsa di processo aggiuntiva.If the process resource specified by the FileName member of the StartInfo property is already running on the computer, no additional process resource is started. Viene invece riutilizzata la risorsa del processo in false esecuzione e viene restituito.Instead, the running process resource is reused and false is returned.

È possibile avviare un'applicazione ClickOnce specificando il percorso, ad esempio un indirizzo Web, da cui è stata originariamente installata l'applicazione.You can start a ClickOnce application by specifying the location (for example, a Web address) from which you originally installed the application. Non avviare un'applicazione ClickOnce specificandone il percorso installato sul disco rigido.Do not start a ClickOnce application by specifying its installed location on your hard drive.

Nota

Se si usa Visual Studio, questo overload del Start metodo è quello che viene inserito nel codice dopo aver trascinato un Process componente nella finestra di progettazione.If you are using Visual Studio, this overload of the Start method is the one that you insert into your code after you drag a Process component onto the designer. Utilizzare la Properties finestra per espandere la StartInfo categoria e scrivere FileName il valore appropriato nella proprietà.Use the Properties window to expand the StartInfo category and write the appropriate value into the FileName property. Le modifiche verranno visualizzate nella InitializeComponent procedura del modulo.Your changes will appear in the form's InitializeComponent procedure.

Questo overload di Start non è un static metodo.This overload of Start is not a static method. È necessario chiamarlo da un'istanza della Process classe.You must call it from an instance of the Process class. Prima di Startchiamare, è necessario specificare StartInfo le informazioni sulle proprietà Process per questa istanza, in quanto tali informazioni vengono utilizzate per determinare la risorsa di processo da avviare.Before calling Start, you must first specify StartInfo property information for this Process instance, because that information is used to determine the process resource to start.

Gli altri overload del Start metodo sono static membri.The other overloads of the Start method are static members. Non è necessario creare un'istanza del Process componente prima di chiamare gli overload del metodo.You do not need to create an instance of the Process component before you call those overloads of the method. È invece possibile chiamare Start per la Process classe stessa e viene creato un nuovo Process componente se il processo è stato avviato.Instead, you can call Start for the Process class itself, and a new Process component is created if the process was started. In alternativa null , viene restituito se un processo è stato riutilizzato.Or, null is returned if a process was reused. La risorsa Process Start di processo viene associata automaticamente al nuovo componente restituito dal metodo.The process resource is automatically associated with the new Process component that is returned by the Start method.

I StartInfo membri possono essere usati per duplicare la funzionalità Run della finestra di dialogo del menu Start di Windows.The StartInfo members can be used to duplicate the functionality of the Run dialog box of the Windows Start menu. Qualsiasi elemento che può essere digitato in una riga di comando può essere avviato impostando i StartInfo valori appropriati nella proprietà.Anything that can be typed into a command line can be started by setting the appropriate values in the StartInfo property. L'unica StartInfo proprietà che deve essere impostata è la FileName proprietà.The only StartInfo property that must be set is the FileName property. Non FileName è necessario che la proprietà sia un file eseguibile.The FileName property does not have to be an executable file. Può essere di qualsiasi tipo di file per cui l'estensione è stata associata a un'applicazione installata nel sistema.It can be of any file type for which the extension has been associated with an application that is installed on the system. La FileName proprietà, ad esempio, può avere un'estensione txt se sono stati associati file di testo con un editor, ad esempio Blocco note, oppure se è presente un'estensione doc se sono stati associati file doc con uno strumento di elaborazione testi, ad esempio Microsoft Word.For example, the FileName property can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc extension if you have associated.doc files with a word processing tool, such as Microsoft Word.

Nella riga di comando è possibile specificare le azioni da eseguire per determinati tipi di file.In the command line, you can specify actions to take for certain types of files. Ad esempio, è possibile stampare i documenti o modificare i file di testo.For example, you can print documents or edit text files. Specificare queste azioni utilizzando il Verb membro StartInfo della proprietà.Specify these actions using the Verb member of the StartInfo property. Per altri tipi di file, è possibile specificare gli argomenti della riga di comando quando si avvia il file Run dalla finestra di dialogo.For other types of files, you can specify command-line arguments when you start the file from the Run dialog box. Ad esempio, è possibile passare un URL come argomento se si specifica il browser come FileName.For example, you can pass a URL as an argument if you specify your browser as the FileName. Questi argomenti possono essere specificati nel StartInfo Arguments membro della proprietà.These arguments can be specified in the StartInfo property's Arguments member.

Se nel sistema è stata dichiarata una variabile Path con le virgolette, è necessario qualificare completamente il percorso all'avvio di qualsiasi processo trovato in tale percorso.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. In caso contrario, il sistema non troverà il percorso.Otherwise, the system will not find the path. Se c:\mypath , ad esempio, non è presente nel percorso e viene aggiunto utilizzando le virgolette: path = %path%;"c:\mypath", è necessario qualificare completamente tutti i c:\mypath processi in al momento dell'avvio.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Nota

Il codice della pagina Web e del controllo server ASP.NET viene eseguito nel contesto del processo di lavoro ASP.NET sul server Web.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Se si usa il Start metodo in una pagina Web o un controllo server ASP.NET, il nuovo processo viene eseguito sul server Web con autorizzazioni limitate.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. Il processo non viene avviato nello stesso contesto del browser client e non ha accesso al desktop dell'utente.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Quando si utilizza Start per avviare un processo, potrebbe essere necessario chiuderlo o rischiare la perdita di risorse di sistema.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. Chiudere i processi CloseMainWindow utilizzando Killo.Close processes using CloseMainWindow or Kill. È possibile verificare se un processo è già stato chiuso utilizzando la relativa HasExited proprietà.You can check whether a process has already been closed by using its HasExited property.

È necessaria una nota sugli stati degli Apartment nei thread gestiti.A note about apartment states in managed threads is necessary here. Quando UseShellExecute si true trova main() nella proprietà del componente del processo, verificare di aver impostato un modello di threading nell'applicazione impostando l'attributo [STAThread] sul metodo. StartInfoWhen UseShellExecute is true on the process component's StartInfo property, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. In caso contrario, un thread gestito può unknown trovarsi in uno stato o inserire MTA lo stato, il secondo dei quali UseShellExecute è truein conflitto con.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Alcuni metodi richiedono che lo stato dell'Apartment non unknownsia.Some methods require that the apartment state not be unknown. Se lo stato non è impostato in modo esplicito, quando l'applicazione rileva un metodo di MTAquesto tipo, il valore predefinito è e, una volta impostato, lo stato dell'Apartment non può essere modificato.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Tuttavia, MTA genera un'eccezione quando la shell del sistema operativo gestisce il thread.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Vedi anche

Start(ProcessStartInfo) Start(ProcessStartInfo) Start(ProcessStartInfo) Start(ProcessStartInfo)

Avvia la risorsa di processo specificata dal parametro contenente le informazioni di avvio del processo (ad esempio, il nome file del processo da avviare) e associa la risorsa a un nuovo componente Process.Starts the process resource that is specified by the parameter containing process start information (for example, the file name of the process to start) and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::Diagnostics::ProcessStartInfo ^ startInfo);
public static System.Diagnostics.Process Start (System.Diagnostics.ProcessStartInfo startInfo);
static member Start : System.Diagnostics.ProcessStartInfo -> System.Diagnostics.Process
Public Shared Function Start (startInfo As ProcessStartInfo) As Process

Parametri

startInfo
ProcessStartInfo ProcessStartInfo ProcessStartInfo ProcessStartInfo

Oggetto ProcessStartInfo che contiene le informazioni usate per avviare il processo, tra cui il nome file e gli eventuali argomenti della riga di comando.The ProcessStartInfo that contains the information that is used to start the process, including the file name and any command-line arguments.

Restituisce

Nuovo Process associato alla risorsa di processo o null se non viene avviata alcuna risorsa di processo.A new Process that is associated with the process resource, or null if no process resource is started. Si noti che un nuovo processo avviato parallelamente a istanze dello stesso processo già in esecuzione sarà indipendente dalle altre.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Inoltre, l'avvio può restituire un processo non Null con la relativa proprietà HasExited già impostata su true.In addition, Start may return a non-null Process with its HasExited property already set to true. In questo caso, è possibile che il processo avviato abbia attivato un'istanza esistente di se stesso e quindi sia terminato.In this case, the started process may have activated an existing instance of itself and then exited.

Eccezioni

Non è stato specificato alcun nome file nella proprietà FileName del parametro startInfo.No file name was specified in the startInfo parameter's FileName property.

-oppure--or- La proprietà UseShellExecute del parametro startInfo è true e anche la proprietà RedirectStandardInput, RedirectStandardOutput o RedirectStandardError è true.The UseShellExecute property of the startInfo parameter is true and the RedirectStandardInput, RedirectStandardOutput, or RedirectStandardError property is also true.

-oppure--or- La proprietà UseShellExecute del parametro startInfo è true e la proprietà UserName non è null o vuota oppure la proprietà Password non è null.The UseShellExecute property of the startInfo parameter is true and the UserName property is not null or empty or the Password property is not null.

Il valore del parametro startInfo è null.The startInfo parameter is null.

L'oggetto del processo è già stato eliminato.The process object has already been disposed.

Il file specificato nella proprietà FileName del parametro startInfo non è stato trovato.The file specified in the startInfo parameter's FileName property could not be found.

Si è verificato un errore durante l'apertura del file associato.An error occurred when opening the associated file.

-oppure--or-

La somma della lunghezza degli argomenti e della lunghezza del percorso completo del processo supera i 2080 caratteri.The sum of the length of the arguments and the length of the full path to the process exceeds 2080. Il messaggio di errore associato a questa eccezione può essere uno dei seguenti: "L'area dati passata a una chiamata al sistema è troppo piccola."The error message associated with this exception can be one of the following: "The data area passed to a system call is too small." oppure "Accesso negato".or "Access is denied."

Metodo non supportato nei sistemi operativi senza supporto della shell, ad esempio Nano Server (solo .NET Core).Method not supported on operating systems without shell support such as Nano Server (.NET Core only).

Esempi

Nell'esempio seguente viene prima generata un'istanza di Internet Explorer e viene visualizzato il contenuto della cartella Preferiti nel browser.The following example first spawns an instance of Internet Explorer and displays the contents of the Favorites folder in the browser. Viene quindi avviata un'altra istanza di Internet Explorer e vengono visualizzate alcune pagine o siti specifici.It then starts some other instances of Internet Explorer and displays some specific pages or sites. Infine, avvia Internet Explorer con la finestra ridotta a icona durante lo spostamento a un sito specifico.Finally it starts Internet Explorer with the window being minimized while navigating to a specific site.

Per ulteriori esempi di altri utilizzi di questo metodo, fare riferimento alle singole proprietà della ProcessStartInfo classe.For additional examples of other uses of this method, refer to the individual properties of the ProcessStartInfo class.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

// Opens the Internet Explorer application.
void OpenApplication(String^ myFavoritesPath)
{
    // Start Internet Explorer. Defaults to the home page.
    Process::Start("IExplore.exe");

    // Display the contents of the favorites folder in the browser.
    Process::Start(myFavoritesPath);
}

// Opens urls and .html documents using Internet Explorer.
void OpenWithArguments()
{
    // url's are not considered documents. They can only be opened
    // by passing them as arguments.
    Process::Start("IExplore.exe", "www.northwindtraders.com");

    // Start a Web page using a browser associated with .html and .asp files.
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.htm");
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.asp");
}

// Uses the ProcessStartInfo class to start new processes,
// both in a minimized mode.
void OpenWithStartInfo()
{
    ProcessStartInfo^ startInfo = gcnew ProcessStartInfo("IExplore.exe");
    startInfo->WindowStyle = ProcessWindowStyle::Minimized;
    Process::Start(startInfo);
    startInfo->Arguments = "www.northwindtraders.com";
    Process::Start(startInfo);
}

int main()
{
    // Get the path that stores favorite links.
    String^ myFavoritesPath = Environment::GetFolderPath(Environment::SpecialFolder::Favorites);
    OpenApplication(myFavoritesPath);
    OpenWithArguments();
    OpenWithStartInfo();
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        // Opens the Internet Explorer application.
        void OpenApplication(string myFavoritesPath)
        {
            // Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe");

            // Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath);
        }

        // Opens urls and .html documents using Internet Explorer.
        void OpenWithArguments()
        {
            // url's are not considered documents. They can only be opened
            // by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com");

            // Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
        }

        // Uses the ProcessStartInfo class to start new processes,
        // both in a minimized mode.
        void OpenWithStartInfo()
        {
            ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Minimized;

            Process.Start(startInfo);

            startInfo.Arguments = "www.northwindtraders.com";

            Process.Start(startInfo);
        }

        static void Main()
        {
            // Get the path that stores favorite links.
            string myFavoritesPath =
                Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

            MyProcess myProcess = new MyProcess();

            myProcess.OpenApplication(myFavoritesPath);
            myProcess.OpenWithArguments();
            myProcess.OpenWithStartInfo();
        }
    }
}
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        ' Opens the Internet Explorer application.
        Public Sub OpenApplication(myFavoritesPath As String)
            ' Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe")

            ' Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath)
        End Sub 'OpenApplication

        ' Opens urls and .html documents using Internet Explorer.
        Sub OpenWithArguments()
            ' url's are not considered documents. They can only be opened
            ' by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com")

            ' Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\myPath\myFile.htm")
            Process.Start("IExplore.exe", "C:\myPath\myFile.asp")
        End Sub 'OpenWithArguments

        ' Uses the ProcessStartInfo class to start new processes,
        ' both in a minimized mode.
        Sub OpenWithStartInfo()
            Dim startInfo As New ProcessStartInfo("IExplore.exe")
            startInfo.WindowStyle = ProcessWindowStyle.Minimized

            Process.Start(startInfo)

            startInfo.Arguments = "www.northwindtraders.com"

            Process.Start(startInfo)
        End Sub 'OpenWithStartInfo

        Shared Sub Main()
            ' Get the path that stores favorite links.
            Dim myFavoritesPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Favorites)

            Dim myProcess As New MyProcess()

            myProcess.OpenApplication(myFavoritesPath)
            myProcess.OpenWithArguments()
            myProcess.OpenWithStartInfo()
        End Sub 'Main
    End Class 'MyProcess
End Namespace 'MyProcessSample

Commenti

Utilizzare questo overload per avviare una risorsa di processo specificando ProcessStartInfo un'istanza di.Use this overload to start a process resource by specifying a ProcessStartInfo instance. L'overload associa la risorsa a un nuovo Process oggetto.The overload associates the resource with a new Process object.

Nota

Se l'indirizzo del file eseguibile da avviare è un URL, il processo non viene avviato e null viene restituito.If the address of the executable file to start is a URL, the process is not started and null is returned.

Questo overload consente di avviare un processo senza prima creare una nuova Process istanza.This overload lets you start a process without first creating a new Process instance. L'utilizzo di questo overload ProcessStartInfo con un parametro rappresenta un'alternativa ai passaggi espliciti della creazione Process di una nuova istanza StartInfo , dell'impostazione delle Start relative proprietà Process e della chiamata per l'istanza di.Using this overload with a ProcessStartInfo parameter is an alternative to the explicit steps of creating a new Process instance, setting its StartInfo properties, and calling Start for the Process instance.

L'uso ProcessStartInfo di un'istanza come parametro consente di Start chiamare con il maggior controllo sugli elementi passati nella chiamata per avviare il processo.Using a ProcessStartInfo instance as the parameter lets you call Start with the most control over what is passed into the call to start the process. Se è necessario passare solo un nome file o un nome file e gli argomenti, non è necessario creare una nuova ProcessStartInfo istanza, anche se si tratta di un'opzione.If you need to pass only a file name or a file name and arguments, it is not necessary to create a new ProcessStartInfo instance, although that is an option. L'unica Process.StartInfo proprietà che deve essere impostata è la FileName proprietà.The only Process.StartInfo property that must be set is the FileName property. Non FileName è necessario che la proprietà rappresenti un file eseguibile.The FileName property does not need to represent an executable file. Può essere di qualsiasi tipo di file per cui l'estensione è stata associata a un'applicazione installata nel sistema.It can be of any file type for which the extension has been associated with an application that is installed on the system. La FileName proprietà, ad esempio, può avere un'estensione txt se sono stati associati file di testo con un editor, ad esempio Blocco note, oppure se è presente un'estensione doc se sono stati associati file doc con uno strumento di elaborazione testi, ad esempio Microsoft Word.For example, the FileName property can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc extension if you have associated.doc files with a word processing tool, such as Microsoft Word.

È possibile avviare un'applicazione ClickOnce specificando il percorso, ad esempio un indirizzo Web, da cui è stata originariamente installata l'applicazione.You can start a ClickOnce application by specifying the location (for example, a Web address) from which you originally installed the application. Non avviare un'applicazione ClickOnce specificandone il percorso installato sul disco rigido.Do not start a ClickOnce application by specifying its installed location on your hard drive.

Se le ProcessStartInfo.UserName proprietà ProcessStartInfo.Password e dell' StartInfo ProcessStartInfo.CreateNoWindow istanzasonotrue impostate, viene chiamata la funzionenongestita,cheavviailprocessoinunanuovafinestra,ancheseilvaloredellaproprietàèoCreateProcessWithLogonW ProcessStartInfo.WindowStyle il valore della ProcessWindowStyle.Hiddenproprietà è.If the ProcessStartInfo.UserName and ProcessStartInfo.Password properties of the StartInfo instance are set, the unmanaged CreateProcessWithLogonW function is called, which starts the process in a new window even if the ProcessStartInfo.CreateNoWindow property value is true or the ProcessStartInfo.WindowStyle property value is ProcessWindowStyle.Hidden. Se la ProcessStartInfo.Domain proprietà è null, la ProcessStartInfo.UserName proprietà deve essere in formato UPN, User@DNS_domain_name.If the ProcessStartInfo.Domain property is null, the ProcessStartInfo.UserName property must be in UPN format, user@DNS_domain_name.

Diversamente dagli altri overload, l'overload di Start senza parametri non è un static membro.Unlike the other overloads, the overload of Start that has no parameters is not a static member. Utilizzare questo overload quando è già stata creata un' Process istanza, le informazioni di avvio specificate (incluso il nome file) e si desidera avviare una risorsa di processo e associarla all' Process istanza esistente.Use that overload when you have already created a Process instance, specified start information (including the file name), and want to start a process resource and associate it with the existing Process instance. Utilizzare uno degli static overload quando si desidera creare un nuovo Process componente anziché avviare un processo per un componente esistente.Use one of the static overloads when you want to create a new Process component rather than start a process for an existing component. Sia questo overload che l'overload senza parametri consentono di specificare le informazioni di avvio per la risorsa di processo usando un' ProcessStartInfo istanza di.Both this overload and the overload that has no parameters allow you to specify the start information for the process resource by using a ProcessStartInfo instance.

Se nel sistema è stata dichiarata una variabile Path con le virgolette, è necessario qualificare completamente il percorso all'avvio di qualsiasi processo trovato in tale percorso.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. In caso contrario, il sistema non troverà il percorso.Otherwise, the system will not find the path. Se c:\mypath , ad esempio, non è presente nel percorso e viene aggiunto utilizzando le virgolette: path = %path%;"c:\mypath", è necessario qualificare completamente tutti i c:\mypath processi in al momento dell'avvio.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Nota

Il codice della pagina Web e del controllo server ASP.NET viene eseguito nel contesto del processo di lavoro ASP.NET sul server Web.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Se si usa il Start metodo in una pagina Web o un controllo server ASP.NET, il nuovo processo viene eseguito sul server Web con autorizzazioni limitate.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. Il processo non viene avviato nello stesso contesto del browser client e non ha accesso al desktop dell'utente.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Quando si utilizza Start per avviare un processo, potrebbe essere necessario chiuderlo o rischiare la perdita di risorse di sistema.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. Chiudere i processi CloseMainWindow utilizzando Killo.Close processes using CloseMainWindow or Kill. È possibile verificare se un processo è già stato chiuso utilizzando la relativa HasExited proprietà.You can check whether a process has already been closed by using its HasExited property.

È necessaria una nota sugli stati degli Apartment nei thread gestiti.A note about apartment states in managed threads is necessary here. Quando UseShellExecute è true sul [STAThread] main() parametro, verificare di aver impostato un modello di threading nell'applicazione impostando l'attributo sul metodo. startInfoWhen UseShellExecute is true on the startInfo parameter, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. In caso contrario, un thread gestito può unknown trovarsi in uno stato o inserire MTA lo stato, il secondo dei quali UseShellExecute è truein conflitto con.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Alcuni metodi richiedono che lo stato dell'Apartment non unknownsia.Some methods require that the apartment state not be unknown. Se lo stato non è impostato in modo esplicito, quando l'applicazione rileva un metodo di MTAquesto tipo, il valore predefinito è e, una volta impostato, lo stato dell'Apartment non può essere modificato.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Tuttavia, MTA genera un'eccezione quando la shell del sistema operativo gestisce il thread.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Vedi anche

Start(String) Start(String) Start(String) Start(String)

Avvia una risorsa di processo specificando il nome di un documento o un file di applicazione e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of a document or application file and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName);
public static System.Diagnostics.Process Start (string fileName);
static member Start : string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String) As Process

Parametri

fileName
String String String String

Nome di un documento o di un file di applicazione da eseguire nel processo.The name of a document or application file to run in the process.

Restituisce

Nuovo Process associato alla risorsa di processo o null se non viene avviata alcuna risorsa di processo.A new Process that is associated with the process resource, or null if no process resource is started. Si noti che un nuovo processo avviato parallelamente a istanze dello stesso processo già in esecuzione sarà indipendente dalle altre.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Inoltre, l'avvio può restituire un processo non Null con la relativa proprietà HasExited già impostata su true.In addition, Start may return a non-null Process with its HasExited property already set to true. In questo caso, è possibile che il processo avviato abbia attivato un'istanza esistente di se stesso e quindi sia terminato.In this case, the started process may have activated an existing instance of itself and then exited.

Eccezioni

Si è verificato un errore durante l'apertura del file associato.An error occurred when opening the associated file.

L'oggetto del processo è già stato eliminato.The process object has already been disposed.

La variabile di ambiente PATH include una stringa che contiene virgolette.The PATH environment variable has a string containing quotes.

Esempi

Nell'esempio seguente viene prima generata un'istanza di Internet Explorer e viene visualizzato il contenuto della cartella Preferiti nel browser.The following example first spawns an instance of Internet Explorer and displays the contents of the Favorites folder in the browser. Viene quindi avviata un'altra istanza di Internet Explorer e vengono visualizzate alcune pagine o siti specifici.It then starts some other instances of Internet Explorer and displays some specific pages or sites. Infine, avvia Internet Explorer con la finestra ridotta a icona durante lo spostamento a un sito specifico.Finally it starts Internet Explorer with the window being minimized while navigating to a specific site.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

// Opens the Internet Explorer application.
void OpenApplication(String^ myFavoritesPath)
{
    // Start Internet Explorer. Defaults to the home page.
    Process::Start("IExplore.exe");

    // Display the contents of the favorites folder in the browser.
    Process::Start(myFavoritesPath);
}

// Opens urls and .html documents using Internet Explorer.
void OpenWithArguments()
{
    // url's are not considered documents. They can only be opened
    // by passing them as arguments.
    Process::Start("IExplore.exe", "www.northwindtraders.com");

    // Start a Web page using a browser associated with .html and .asp files.
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.htm");
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.asp");
}

// Uses the ProcessStartInfo class to start new processes,
// both in a minimized mode.
void OpenWithStartInfo()
{
    ProcessStartInfo^ startInfo = gcnew ProcessStartInfo("IExplore.exe");
    startInfo->WindowStyle = ProcessWindowStyle::Minimized;
    Process::Start(startInfo);
    startInfo->Arguments = "www.northwindtraders.com";
    Process::Start(startInfo);
}

int main()
{
    // Get the path that stores favorite links.
    String^ myFavoritesPath = Environment::GetFolderPath(Environment::SpecialFolder::Favorites);
    OpenApplication(myFavoritesPath);
    OpenWithArguments();
    OpenWithStartInfo();
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        // Opens the Internet Explorer application.
        void OpenApplication(string myFavoritesPath)
        {
            // Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe");

            // Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath);
        }

        // Opens urls and .html documents using Internet Explorer.
        void OpenWithArguments()
        {
            // url's are not considered documents. They can only be opened
            // by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com");

            // Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
        }

        // Uses the ProcessStartInfo class to start new processes,
        // both in a minimized mode.
        void OpenWithStartInfo()
        {
            ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Minimized;

            Process.Start(startInfo);

            startInfo.Arguments = "www.northwindtraders.com";

            Process.Start(startInfo);
        }

        static void Main()
        {
            // Get the path that stores favorite links.
            string myFavoritesPath =
                Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

            MyProcess myProcess = new MyProcess();

            myProcess.OpenApplication(myFavoritesPath);
            myProcess.OpenWithArguments();
            myProcess.OpenWithStartInfo();
        }
    }
}
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        ' Opens the Internet Explorer application.
        Public Sub OpenApplication(myFavoritesPath As String)
            ' Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe")

            ' Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath)
        End Sub 'OpenApplication

        ' Opens urls and .html documents using Internet Explorer.
        Sub OpenWithArguments()
            ' url's are not considered documents. They can only be opened
            ' by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com")

            ' Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\myPath\myFile.htm")
            Process.Start("IExplore.exe", "C:\myPath\myFile.asp")
        End Sub 'OpenWithArguments

        ' Uses the ProcessStartInfo class to start new processes,
        ' both in a minimized mode.
        Sub OpenWithStartInfo()
            Dim startInfo As New ProcessStartInfo("IExplore.exe")
            startInfo.WindowStyle = ProcessWindowStyle.Minimized

            Process.Start(startInfo)

            startInfo.Arguments = "www.northwindtraders.com"

            Process.Start(startInfo)
        End Sub 'OpenWithStartInfo

        Shared Sub Main()
            ' Get the path that stores favorite links.
            Dim myFavoritesPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Favorites)

            Dim myProcess As New MyProcess()

            myProcess.OpenApplication(myFavoritesPath)
            myProcess.OpenWithArguments()
            myProcess.OpenWithStartInfo()
        End Sub 'Main
    End Class 'MyProcess
End Namespace 'MyProcessSample

Commenti

Utilizzare questo overload per avviare una risorsa di processo specificando il relativo nome file.Use this overload to start a process resource by specifying its file name. L'overload associa la risorsa a un nuovo Process oggetto.The overload associates the resource with a new Process object.

Nota

Se l'indirizzo del file eseguibile da avviare è un URL, il processo non viene avviato e null viene restituito.If the address of the executable file to start is a URL, the process is not started and null is returned.

Questo overload consente di avviare un processo senza prima creare una nuova Process istanza.This overload lets you start a process without first creating a new Process instance. L'overload rappresenta un'alternativa ai passaggi espliciti per la creazione di Process una nuova istanza, FileName l'impostazione del StartInfo membro della proprietà e Start la chiamata Process di per l'istanza.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName member of the StartInfo property, and calling Start for the Process instance.

È possibile avviare un'applicazione ClickOnce impostando il fileName parametro sul percorso, ad esempio un indirizzo Web, da cui è stata originariamente installata l'applicazione.You can start a ClickOnce application by setting the fileName parameter to the location (for example, a Web address) from which you originally installed the application. Non avviare un'applicazione ClickOnce specificandone il percorso installato sul disco rigido.Do not start a ClickOnce application by specifying its installed location on your hard drive.

L'avvio di un processo specificando il nome del file è simile alla digitazione delle informazioni nella Run finestra di dialogo del menu di Windows. StartStarting a process by specifying its file name is similar to typing the information in the Run dialog box of the Windows Start menu. Pertanto, non è necessario che il nome del file rappresenti un file eseguibile.Therefore, the file name does not need to represent an executable file. Può essere di qualsiasi tipo di file per cui l'estensione è stata associata a un'applicazione installata nel sistema.It can be of any file type for which the extension has been associated with an application installed on the system. Ad esempio, il nome file può avere un'estensione txt se sono stati associati file di testo con un editor, ad esempio Blocco note, oppure se è presente un file con estensione doc associato a uno strumento di elaborazione di Word, ad esempio Microsoft Word.For example the file name can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc if you have associated.doc files with a word processing tool, such as Microsoft Word. Analogamente, nello stesso modo in cui Run la finestra di dialogo può accettare un nome file eseguibile con o senza l'estensione exe, l'estensione exe è facoltativa fileName nel parametro.Similarly, in the same way that the Run dialog box can accept an executable file name with or without the .exe extension, the .exe extension is optional in the fileName parameter. Ad esempio, è possibile impostare il fileName parametro su "Notepad. exe" o "blocco note".For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad".

Questo overload non consente argomenti della riga di comando per il processo.This overload does not allow command-line arguments for the process. Se è necessario specificare uno o più argomenti della riga di comando per il processo, usare gli Process.Start(ProcessStartInfo) overload Process.Start(String, String) o.If you need to specify one or more command-line arguments for the process, use the Process.Start(ProcessStartInfo) or Process.Start(String, String) overloads.

Diversamente dagli altri overload, l'overload di Start senza parametri non è un static membro.Unlike the other overloads, the overload of Start that has no parameters is not a static member. Utilizzare questo overload quando è già stata creata un' Process istanza, le informazioni di avvio specificate (incluso il nome file) e si desidera avviare una risorsa di processo e associarla all' Process istanza esistente.Use that overload when you have already created a Process instance, specified start information (including the file name), and want to start a process resource and associate it with the existing Process instance. Utilizzare uno degli static overload quando si desidera creare un nuovo Process componente anziché avviare un processo per un componente esistente.Use one of the static overloads when you want to create a new Process component rather than start a process for an existing component. Sia questo overload che l'overload senza parametri consentono di specificare il nome file della risorsa del processo da avviare.Both this overload and the overload that has no parameters allow you to specify the file name of the process resource to start.

Se nel sistema è stata dichiarata una variabile Path con le virgolette, è necessario qualificare completamente il percorso all'avvio di qualsiasi processo trovato in tale percorso.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. In caso contrario, il sistema non troverà il percorso.Otherwise, the system will not find the path. Se c:\mypath , ad esempio, non è presente nel percorso e viene aggiunto utilizzando le virgolette: path = %path%;"c:\mypath", è necessario qualificare completamente tutti i c:\mypath processi in al momento dell'avvio.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Nota

Il codice della pagina Web e del controllo server ASP.NET viene eseguito nel contesto del processo di lavoro ASP.NET sul server Web.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Se si usa il Start metodo in una pagina Web o un controllo server ASP.NET, il nuovo processo viene eseguito sul server Web con autorizzazioni limitate.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. Il processo non viene avviato nello stesso contesto del browser client e non ha accesso al desktop dell'utente.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Quando si utilizza Start per avviare un processo, potrebbe essere necessario chiuderlo o rischiare la perdita di risorse di sistema.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. Chiudere i processi CloseMainWindow utilizzando Killo.Close processes using CloseMainWindow or Kill. È possibile verificare se un processo è già stato chiuso utilizzando la relativa HasExited proprietà.You can check whether a process has already been closed by using its HasExited property.

È necessaria una nota sugli stati degli Apartment nei thread gestiti.A note about apartment states in managed threads is necessary here. Quando UseShellExecute si true trova main() nella proprietà del componente del processo, verificare di aver impostato un modello di threading nell'applicazione impostando l'attributo [STAThread] sul metodo. StartInfoWhen UseShellExecute is true on the process component's StartInfo property, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. In caso contrario, un thread gestito può unknown trovarsi in uno stato o inserire MTA lo stato, il secondo dei quali UseShellExecute è truein conflitto con.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Alcuni metodi richiedono che lo stato dell'Apartment non unknownsia.Some methods require that the apartment state not be unknown. Se lo stato non è impostato in modo esplicito, quando l'applicazione rileva un metodo di MTAquesto tipo, il valore predefinito è e, una volta impostato, lo stato dell'Apartment non può essere modificato.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Tuttavia, MTA genera un'eccezione quando la shell del sistema operativo gestisce il thread.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Vedi anche

Start(String, String) Start(String, String) Start(String, String) Start(String, String)

Avvia una risorsa di processo specificando il nome di un'applicazione e un insieme di argomenti della riga di comando e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of an application and a set of command-line arguments, and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName, System::String ^ arguments);
public static System.Diagnostics.Process Start (string fileName, string arguments);
static member Start : string * string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String, arguments As String) As Process

Parametri

fileName
String String String String

Nome di un file di applicazione da eseguire nel processo.The name of an application file to run in the process.

arguments
String String String String

Argomenti della riga di comando da passare all'avvio del processo.Command-line arguments to pass when starting the process.

Restituisce

Nuovo Process associato alla risorsa di processo o null se non viene avviata alcuna risorsa di processo.A new Process that is associated with the process resource, or null if no process resource is started. Si noti che un nuovo processo avviato parallelamente a istanze dello stesso processo già in esecuzione sarà indipendente dalle altre.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Inoltre, l'avvio può restituire un processo non Null con la relativa proprietà HasExited già impostata su true.In addition, Start may return a non-null Process with its HasExited property already set to true. In questo caso, è possibile che il processo avviato abbia attivato un'istanza esistente di se stesso e quindi sia terminato.In this case, the started process may have activated an existing instance of itself and then exited.

Eccezioni

Il parametro fileName o il parametro arguments è null.The fileName or arguments parameter is null.

Si è verificato un errore durante l'apertura del file associato.An error occurred when opening the associated file.

-oppure--or-

La somma della lunghezza degli argomenti e della lunghezza del percorso completo del processo supera i 2080 caratteri.The sum of the length of the arguments and the length of the full path to the process exceeds 2080. Il messaggio di errore associato a questa eccezione può essere uno dei seguenti: "L'area dati passata a una chiamata al sistema è troppo piccola."The error message associated with this exception can be one of the following: "The data area passed to a system call is too small." oppure "Accesso negato".or "Access is denied."

L'oggetto del processo è già stato eliminato.The process object has already been disposed.

La variabile di ambiente PATH include una stringa che contiene virgolette.The PATH environment variable has a string containing quotes.

Esempi

Nell'esempio seguente viene prima generata un'istanza di Internet Explorer e viene visualizzato il contenuto della cartella Preferiti nel browser.The following example first spawns an instance of Internet Explorer and displays the contents of the Favorites folder in the browser. Viene quindi avviata un'altra istanza di Internet Explorer e vengono visualizzate alcune pagine o siti specifici.It then starts some other instances of Internet Explorer and displays some specific pages or sites. Infine, avvia Internet Explorer con la finestra ridotta a icona durante lo spostamento a un sito specifico.Finally it starts Internet Explorer with the window being minimized while navigating to a specific site.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

// Opens the Internet Explorer application.
void OpenApplication(String^ myFavoritesPath)
{
    // Start Internet Explorer. Defaults to the home page.
    Process::Start("IExplore.exe");

    // Display the contents of the favorites folder in the browser.
    Process::Start(myFavoritesPath);
}

// Opens urls and .html documents using Internet Explorer.
void OpenWithArguments()
{
    // url's are not considered documents. They can only be opened
    // by passing them as arguments.
    Process::Start("IExplore.exe", "www.northwindtraders.com");

    // Start a Web page using a browser associated with .html and .asp files.
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.htm");
    Process::Start("IExplore.exe", "C:\\myPath\\myFile.asp");
}

// Uses the ProcessStartInfo class to start new processes,
// both in a minimized mode.
void OpenWithStartInfo()
{
    ProcessStartInfo^ startInfo = gcnew ProcessStartInfo("IExplore.exe");
    startInfo->WindowStyle = ProcessWindowStyle::Minimized;
    Process::Start(startInfo);
    startInfo->Arguments = "www.northwindtraders.com";
    Process::Start(startInfo);
}

int main()
{
    // Get the path that stores favorite links.
    String^ myFavoritesPath = Environment::GetFolderPath(Environment::SpecialFolder::Favorites);
    OpenApplication(myFavoritesPath);
    OpenWithArguments();
    OpenWithStartInfo();
}
using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    class MyProcess
    {
        // Opens the Internet Explorer application.
        void OpenApplication(string myFavoritesPath)
        {
            // Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe");

            // Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath);
        }

        // Opens urls and .html documents using Internet Explorer.
        void OpenWithArguments()
        {
            // url's are not considered documents. They can only be opened
            // by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com");

            // Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
        }

        // Uses the ProcessStartInfo class to start new processes,
        // both in a minimized mode.
        void OpenWithStartInfo()
        {
            ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Minimized;

            Process.Start(startInfo);

            startInfo.Arguments = "www.northwindtraders.com";

            Process.Start(startInfo);
        }

        static void Main()
        {
            // Get the path that stores favorite links.
            string myFavoritesPath =
                Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

            MyProcess myProcess = new MyProcess();

            myProcess.OpenApplication(myFavoritesPath);
            myProcess.OpenWithArguments();
            myProcess.OpenWithStartInfo();
        }
    }
}
Imports System.Diagnostics
Imports System.ComponentModel

Namespace MyProcessSample
    Class MyProcess
        ' Opens the Internet Explorer application.
        Public Sub OpenApplication(myFavoritesPath As String)
            ' Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe")

            ' Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath)
        End Sub 'OpenApplication

        ' Opens urls and .html documents using Internet Explorer.
        Sub OpenWithArguments()
            ' url's are not considered documents. They can only be opened
            ' by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com")

            ' Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\myPath\myFile.htm")
            Process.Start("IExplore.exe", "C:\myPath\myFile.asp")
        End Sub 'OpenWithArguments

        ' Uses the ProcessStartInfo class to start new processes,
        ' both in a minimized mode.
        Sub OpenWithStartInfo()
            Dim startInfo As New ProcessStartInfo("IExplore.exe")
            startInfo.WindowStyle = ProcessWindowStyle.Minimized

            Process.Start(startInfo)

            startInfo.Arguments = "www.northwindtraders.com"

            Process.Start(startInfo)
        End Sub 'OpenWithStartInfo

        Shared Sub Main()
            ' Get the path that stores favorite links.
            Dim myFavoritesPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Favorites)

            Dim myProcess As New MyProcess()

            myProcess.OpenApplication(myFavoritesPath)
            myProcess.OpenWithArguments()
            myProcess.OpenWithStartInfo()
        End Sub 'Main
    End Class 'MyProcess
End Namespace 'MyProcessSample

Commenti

Utilizzare questo overload per avviare una risorsa di processo specificando il nome file e gli argomenti della riga di comando.Use this overload to start a process resource by specifying its file name and command-line arguments. L'overload associa la risorsa a un nuovo Process oggetto.The overload associates the resource with a new Process object.

Nota

Se l'indirizzo del file eseguibile da avviare è un URL, il processo non viene avviato e null viene restituito.If the address of the executable file to start is a URL, the process is not started and null is returned.

Questo overload consente di avviare un processo senza prima creare una nuova Process istanza.This overload lets you start a process without first creating a new Process instance. L'overload rappresenta un'alternativa ai passaggi espliciti della creazione di una Process nuova istanza di, FileName dell' Arguments impostazione dei membri StartInfo e della proprietà e Start della chiamata Process per l'istanza di.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName and Arguments members of the StartInfo property, and calling Start for the Process instance.

L'avvio di un processo specificando il nome e gli argomenti del file è simile alla digitazione del nome del file Run e degli argomenti della riga Start di comando nella finestra di dialogo del menu di Windows.Starting a process by specifying its file name and arguments is similar to typing the file name and command-line arguments in the Run dialog box of the Windows Start menu. Pertanto, non è necessario che il nome del file rappresenti un file eseguibile.Therefore, the file name does not need to represent an executable file. Può essere di qualsiasi tipo di file per cui l'estensione è stata associata a un'applicazione installata nel sistema.It can be of any file type for which the extension has been associated with an application installed on the system. Ad esempio, il nome file può avere un'estensione txt se sono stati associati file di testo con un editor, ad esempio Blocco note, oppure se è presente un file con estensione doc associato a uno strumento di elaborazione di Word, ad esempio Microsoft Word.For example the file name can have a .txt extension if you have associated text files with an editor, such as Notepad, or it can have a .doc if you have associated.doc files with a word processing tool, such as Microsoft Word. Analogamente, nello stesso modo in cui Run la finestra di dialogo può accettare un nome file eseguibile con o senza l'estensione exe, l'estensione exe è facoltativa fileName nel parametro.Similarly, in the same way that the Run dialog box can accept an executable file name with or without the .exe extension, the .exe extension is optional in the fileName parameter. Ad esempio, è possibile impostare il fileName parametro su "Notepad. exe" o "blocco note".For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad". Se il fileName parametro rappresenta un file eseguibile, arguments il parametro potrebbe rappresentare un file su cui agire, ad esempio il file di Notepad.exe myfile.txttesto in.If the fileName parameter represents an executable file, the arguments parameter might represent a file to act upon, such as the text file in Notepad.exe myfile.txt. Se il fileName parametro rappresenta un file di comando (cmd), il arguments parametro deve includere un argomento "/c" o "/k" per specificare se la finestra di comando viene chiusa o rimane dopo il completamento.If the fileName parameter represents a command (.cmd) file, the arguments parameter must include either a "/c" or "/k" argument to specify whether the command window exits or remains after completion.

Diversamente dagli altri overload, l'overload di Start senza parametri non è un static membro.Unlike the other overloads, the overload of Start that has no parameters is not a static member. Utilizzare questo overload quando è già stata creata un' Process istanza, le informazioni di avvio specificate (incluso il nome file) e si desidera avviare una risorsa di processo e associarla all' Process istanza esistente.Use that overload when you have already created a Process instance, specified start information (including the file name), and want to start a process resource and associate it with the existing Process instance. Utilizzare uno degli static overload quando si desidera creare un nuovo Process componente anziché avviare un processo per un componente esistente.Use one of the static overloads when you want to create a new Process component rather than start a process for an existing component. Sia questo overload che l'overload senza parametri consentono di specificare il nome file della risorsa di processo da avviare e gli argomenti della riga di comando da passare.Both this overload and the overload that has no parameters allow you to specify the file name of the process resource to start and command-line arguments to pass.

Se nel sistema è stata dichiarata una variabile Path con le virgolette, è necessario qualificare completamente il percorso all'avvio di qualsiasi processo trovato in tale percorso.If you have a path variable declared in your system using quotes, you must fully qualify that path when starting any process found in that location. In caso contrario, il sistema non troverà il percorso.Otherwise, the system will not find the path. Se c:\mypath , ad esempio, non è presente nel percorso e viene aggiunto utilizzando le virgolette: path = %path%;"c:\mypath", è necessario qualificare completamente tutti i c:\mypath processi in al momento dell'avvio.For example, if c:\mypath is not in your path, and you add it using quotation marks: path = %path%;"c:\mypath", you must fully qualify any process in c:\mypath when starting it.

Nota

Il codice della pagina Web e del controllo server ASP.NET viene eseguito nel contesto del processo di lavoro ASP.NET sul server Web.ASP.NET Web page and server control code executes in the context of the ASP.NET worker process on the Web server. Se si usa il Start metodo in una pagina Web o un controllo server ASP.NET, il nuovo processo viene eseguito sul server Web con autorizzazioni limitate.If you use the Start method in an ASP.NET Web page or server control, the new process executes on the Web server with restricted permissions. Il processo non viene avviato nello stesso contesto del browser client e non ha accesso al desktop dell'utente.The process does not start in the same context as the client browser, and does not have access to the user desktop.

Quando si utilizza Start per avviare un processo, potrebbe essere necessario chiuderlo o rischiare la perdita di risorse di sistema.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. Chiudere i processi CloseMainWindow utilizzando Killo.Close processes using CloseMainWindow or Kill. È possibile verificare se un processo è già stato chiuso utilizzando la relativa HasExited proprietà.You can check whether a process has already been closed by using its HasExited property.

È necessaria una nota sugli stati degli Apartment nei thread gestiti.A note about apartment states in managed threads is necessary here. Quando UseShellExecute si true trova main() nella proprietà del componente del processo, verificare di aver impostato un modello di threading nell'applicazione impostando l'attributo [STAThread] sul metodo. StartInfoWhen UseShellExecute is true on the process component's StartInfo property, make sure you have set a threading model on your application by setting the attribute [STAThread] on the main() method. In caso contrario, un thread gestito può unknown trovarsi in uno stato o inserire MTA lo stato, il secondo dei quali UseShellExecute è truein conflitto con.Otherwise, a managed thread can be in an unknown state or put in the MTA state, the latter of which conflicts with UseShellExecute being true. Alcuni metodi richiedono che lo stato dell'Apartment non unknownsia.Some methods require that the apartment state not be unknown. Se lo stato non è impostato in modo esplicito, quando l'applicazione rileva un metodo di MTAquesto tipo, il valore predefinito è e, una volta impostato, lo stato dell'Apartment non può essere modificato.If the state is not explicitly set, when the application encounters such a method, it defaults to MTA, and once set, the apartment state cannot be changed. Tuttavia, MTA genera un'eccezione quando la shell del sistema operativo gestisce il thread.However, MTA causes an exception to be thrown when the operating system shell is managing the thread.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Vedi anche

Start(String, String, SecureString, String) Start(String, String, SecureString, String) Start(String, String, SecureString, String) Start(String, String, SecureString, String)

Importante

Questa API non è conforme a CLS.

Avvia una risorsa di processo specificando il nome di un'applicazione, un nome utente, una password e un dominio e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of an application, a user name, a password, and a domain and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName, System::String ^ userName, System::Security::SecureString ^ password, System::String ^ domain);
[System.CLSCompliant(false)]
public static System.Diagnostics.Process Start (string fileName, string userName, System.Security.SecureString password, string domain);
static member Start : string * string * System.Security.SecureString * string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String, userName As String, password As SecureString, domain As String) As Process

Parametri

fileName
String String String String

Nome di un file di applicazione da eseguire nel processo.The name of an application file to run in the process.

userName
String String String String

Nome utente da usare all'avvio del processo.The user name to use when starting the process.

password
SecureString SecureString SecureString SecureString

Classe SecureString contenente la password da usare all'avvio del processo.A SecureString that contains the password to use when starting the process.

domain
String String String String

Dominio da usare all'avvio del processo.The domain to use when starting the process.

Restituisce

Nuovo Process associato alla risorsa di processo o null se non viene avviata alcuna risorsa di processo.A new Process that is associated with the process resource, or null if no process resource is started. Si noti che un nuovo processo avviato parallelamente a istanze dello stesso processo già in esecuzione sarà indipendente dalle altre.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Inoltre, l'avvio può restituire un processo non Null con la relativa proprietà HasExited già impostata su true.In addition, Start may return a non-null Process with its HasExited property already set to true. In questo caso, è possibile che il processo avviato abbia attivato un'istanza esistente di se stesso e quindi sia terminato.In this case, the started process may have activated an existing instance of itself and then exited.

Eccezioni

Si è verificato un errore durante l'apertura del file associato.There was an error in opening the associated file.

L'oggetto del processo è già stato eliminato.The process object has already been disposed.

Metodo non supportato in Linux o macOS (solo .NET Core).Method not supported on Linux or macOS (.NET Core only).

Esempi

Nell'esempio di codice seguente viene illustrato l'utilizzo di questo overload per avviare un file eseguibile e viene inoltre illustrata la generazione di un oggetto Win32Exception quando viene eseguito un tentativo di avviare un'applicazione associata a un file non eseguibile.The following code example shows the use of this overload to start an executable file and also demonstrates the throwing of a Win32Exception when an attempt is made to start an application associated with a nonexecutable file.

// NOTE: This example requires a text.txt file file in your Documents folder
using System;
using System.Diagnostics;
using System.Security;
using System.ComponentModel;

class Example
{
    static void Main()
    {
        Console.Write("Enter your domain: ");
        string domain = Console.ReadLine();
        Console.Write("Enter you user name: ");
        string uname = Console.ReadLine();
        Console.Write("Enter your password: ");
        SecureString password = new SecureString();
        ConsoleKeyInfo key;
        do
        {
            key = Console.ReadKey(true);

            // Ignore any key out of range.
            if (((int)key.Key) >= 33 && ((int)key.Key <= 90) && key.Key != ConsoleKey.Enter)
            {
                // Append the character to the password.
                password.AppendChar(key.KeyChar);
                Console.Write("*");
            }
            // Exit if Enter key is pressed.
        } while (key.Key != ConsoleKey.Enter);
        Console.WriteLine();

        try
        {
            Console.WriteLine("\nTrying to launch NotePad using your login information...");
            Process.Start("notepad.exe", uname, password, domain);
        }
        catch (Win32Exception ex)
        {
            Console.WriteLine(ex.Message);
        }

        string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\";

        try
        {
            // The following call to Start succeeds if test.txt exists.
            Console.WriteLine("\nTrying to launch 'text.txt'...");
            Process.Start(path + "text.txt");
        }
        catch (Win32Exception ex)
        {
            Console.WriteLine(ex.Message);
        }

        try
        {
            // Attempting to start in a shell using this Start overload fails. This causes
            // the following exception, which is picked up in the catch block below:
            // The specified executable is not a valid application for this OS platform.
            Console.WriteLine("\nTrying to launch 'text.txt' with your login information...");
            Process.Start(path + "text.txt", uname, password, domain);
        }
        catch (Win32Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        finally
        {
            password.Dispose();
        }
    }
}
' This sample requires a text.txt file file in your documents folder.
' You'll also need to set the startup object in the project to Sub Main.
Imports System.Diagnostics
Imports System.Security
Imports System.ComponentModel

Module Program
    Sub Main()
        Console.Write("Enter your domain: ")
        Dim domain As String = Console.ReadLine()
        Console.Write("Enter you user name: ")
        Dim uname As String = Console.ReadLine()
        Console.Write("Enter your password: ")
        Dim password As New SecureString()
        Dim key As ConsoleKeyInfo
        Do
            key = Console.ReadKey(True)

            ' Ignore any key out of range.
            If key.Key >= 33 AndAlso key.Key <= 90 AndAlso key.Key <> ConsoleKey.Enter Then
                ' Append the character to the password.
                password.AppendChar(key.KeyChar)
                Console.Write("*")
            End If
            ' Exit if Enter key is pressed.
        Loop While key.Key <> ConsoleKey.Enter
        Console.WriteLine()

        Try
            Console.WriteLine(vbCrLf + "Trying to launch NotePad using your login information...")
            Process.Start("notepad.exe", uname, password, domain)
        Catch ex As Win32Exception
            Console.WriteLine(ex.Message)
        End Try

        Dim path As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\"

        Try
            ' The following call to Start succeeds if test.txt exists.
            Console.WriteLine(vbCrLf + "Trying to launch 'text.txt'...")
            Process.Start(path + "Text.txt")
        Catch ex As Win32Exception
            Console.WriteLine(ex.Message)
        End Try

        Try
            ' Attempting to start in a shell using this Start overload fails. This causes
            ' the following exception, which is picked up in the catch block below:
            ' The specified executable is not a valid application for this OS platform.
            Console.WriteLine(vbCrLf + "Trying to launch 'text.txt' with your login information...")
            Process.Start(path + "Text.txt", uname, password, domain)
        Catch ex As Win32Exception
            Console.WriteLine(ex.Message)
        Finally
            password.Dispose()
        End Try
    End Sub
End Module

Commenti

Utilizzare questo overload per creare un nuovo processo e il relativo thread primario specificando il nome file, il nome utente, la password e il dominio.Use this overload to create a new process and its primary thread by specifying its file name, user name, password, and domain. Il nuovo processo esegue quindi il file eseguibile specificato nel contesto di sicurezza delle credenziali specificate (utente, dominio e password).The new process then runs the specified executable file in the security context of the specified credentials (user, domain, and password).

Nota

Quando il file eseguibile si trova in un'unità remota, è necessario identificare la condivisione di rete usando un URI (Uniform Resource Identifier) e non una lettera di unità collegata.When the executable file is located on a remote drive, you must identify the network share by using a uniform resource identifier (URI), not a linked drive letter.

Nota

Se l'indirizzo del file eseguibile da avviare è un URL, il processo non viene avviato e null viene restituito.If the address of the executable file to start is a URL, the process is not started and null is returned.

Questo overload consente di avviare un processo senza prima creare una nuova Process istanza.This overload lets you start a process without first creating a new Process instance. L'overload rappresenta un'alternativa ai passaggi espliciti per la creazione di Process una nuova istanza, FileNamel' UserNameimpostazione Passworddelle proprietà Domain ,, e StartInfo della proprietà e la Start chiamata di per istanza Process di.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName, UserName, Password, and Domain properties of the StartInfo property, and calling Start for the Process instance.

Analogamente, nello stesso modo in cui la finestra di dialogo Esegui può accettare un nome file eseguibile con o senza l'estensione exe, l'estensione exe è facoltativa fileName nel parametro.Similarly, in the same way that the Run dialog box can accept an executable file name with or without the .exe extension, the .exe extension is optional in the fileName parameter. Ad esempio, è possibile impostare il fileName parametro su "Notepad. exe" o "blocco note".For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad". Se il fileName parametro rappresenta un file eseguibile, arguments il parametro potrebbe rappresentare un file su cui agire, ad esempio il file di Notepad.exe myfile.txttesto in.If the fileName parameter represents an executable file, the arguments parameter might represent a file to act upon, such as the text file in Notepad.exe myfile.txt.

Nota

Il nome file deve rappresentare un file eseguibile negli Start overload userNamecon parametri, passworde domain .The file name must represent an executable file in the Start overloads that have userName, password, and domain parameters.

Quando si utilizza Start per avviare un processo, potrebbe essere necessario chiuderlo o rischiare la perdita di risorse di sistema.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. Chiudere i processi CloseMainWindow utilizzando Killo.Close processes using CloseMainWindow or Kill. È possibile verificare se un processo è già stato chiuso utilizzando la relativa HasExited proprietà.You can check whether a process has already been closed by using its HasExited property.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Start(String, String, String, SecureString, String) Start(String, String, String, SecureString, String) Start(String, String, String, SecureString, String) Start(String, String, String, SecureString, String)

Importante

Questa API non è conforme a CLS.

Avvia una risorsa di processo specificando il nome di un'applicazione e un insieme di argomenti della riga di comando, un nome utente, una password e un dominio, e associa la risorsa a un nuovo componente Process.Starts a process resource by specifying the name of an application, a set of command-line arguments, a user name, a password, and a domain and associates the resource with a new Process component.

public:
 static System::Diagnostics::Process ^ Start(System::String ^ fileName, System::String ^ arguments, System::String ^ userName, System::Security::SecureString ^ password, System::String ^ domain);
[System.CLSCompliant(false)]
public static System.Diagnostics.Process Start (string fileName, string arguments, string userName, System.Security.SecureString password, string domain);
static member Start : string * string * string * System.Security.SecureString * string -> System.Diagnostics.Process
Public Shared Function Start (fileName As String, arguments As String, userName As String, password As SecureString, domain As String) As Process

Parametri

fileName
String String String String

Nome di un file di applicazione da eseguire nel processo.The name of an application file to run in the process.

arguments
String String String String

Argomenti della riga di comando da passare all'avvio del processo.Command-line arguments to pass when starting the process.

userName
String String String String

Nome utente da usare all'avvio del processo.The user name to use when starting the process.

password
SecureString SecureString SecureString SecureString

Classe SecureString contenente la password da usare all'avvio del processo.A SecureString that contains the password to use when starting the process.

domain
String String String String

Dominio da usare all'avvio del processo.The domain to use when starting the process.

Restituisce

Nuovo Process associato alla risorsa di processo o null se non viene avviata alcuna risorsa di processo.A new Process that is associated with the process resource, or null if no process resource is started. Si noti che un nuovo processo avviato parallelamente a istanze dello stesso processo già in esecuzione sarà indipendente dalle altre.Note that a new process that's started alongside already running instances of the same process will be independent from the others. Inoltre, l'avvio può restituire un processo non Null con la relativa proprietà HasExited già impostata su true.In addition, Start may return a non-null Process with its HasExited property already set to true. In questo caso, è possibile che il processo avviato abbia attivato un'istanza esistente di se stesso e quindi sia terminato.In this case, the started process may have activated an existing instance of itself and then exited.

Eccezioni

Si è verificato un errore durante l'apertura del file associato.An error occurred when opening the associated file.

-oppure--or-

La somma della lunghezza degli argomenti e della lunghezza del percorso completo al file associato supera 2080.The sum of the length of the arguments and the length of the full path to the associated file exceeds 2080. Il messaggio di errore associato a questa eccezione può essere uno dei seguenti: "L'area dati passata a una chiamata al sistema è troppo piccola."The error message associated with this exception can be one of the following: "The data area passed to a system call is too small." oppure "Accesso negato".or "Access is denied."

L'oggetto del processo è già stato eliminato.The process object has already been disposed.

Metodo non supportato in Linux o macOS (solo .NET Core).Method not supported on Linux or macOS (.NET Core only).

Commenti

Utilizzare questo overload per creare un nuovo processo e il relativo thread primario specificando il nome file, gli argomenti della riga di comando, il nome utente, la password e il dominio.Use this overload to create a new process and its primary thread by specifying its file name, command-line arguments, user name, password, and domain. Il nuovo processo esegue quindi il file eseguibile specificato nel contesto di sicurezza delle credenziali specificate (utente, dominio e password).The new process then runs the specified executable file in the security context of the specified credentials (user, domain, and password).

Nota

Quando il file eseguibile si trova in un'unità remota, è necessario identificare la condivisione di rete usando un URI (Uniform Resource Identifier) e non una lettera di unità collegata.When the executable file is located on a remote drive, you must identify the network share by using a uniform resource identifier (URI), not a linked drive letter.

Nota

Se l'indirizzo del file eseguibile da avviare è un URL, il processo non viene avviato e null viene restituito.If the address of the executable file to start is a URL, the process is not started and null is returned.

Questo overload consente di avviare un processo senza prima creare una nuova Process istanza.This overload lets you start a process without first creating a new Process instance. L'overload rappresenta un'alternativa ai passaggi espliciti per la creazione di Process una nuova istanza di FileName, Argumentsl'impostazione Passworddelle proprietà Domain ,, UserName, StartInfo e della proprietà e la chiamata di Start per l'Process istanza di.The overload is an alternative to the explicit steps of creating a new Process instance, setting the FileName, Arguments, UserName, Password, and Domain properties of the StartInfo property, and calling Start for the Process instance.

Analogamente, nello stesso modo in cui la finestra di dialogo Esegui può accettare un nome file eseguibile con o senza l'estensione exe, l'estensione exe è facoltativa fileName nel parametro.Similarly, in the same way that the Run dialog box can accept an executable file name with or without the .exe extension, the .exe extension is optional in the fileName parameter. Ad esempio, è possibile impostare il fileName parametro su "Notepad. exe" o "blocco note".For example, you can set the fileName parameter to either "Notepad.exe" or "Notepad". Se il fileName parametro rappresenta un file eseguibile, arguments il parametro potrebbe rappresentare un file su cui agire, ad esempio il file di Notepad.exe myfile.txttesto in.If the fileName parameter represents an executable file, the arguments parameter might represent a file to act upon, such as the text file in Notepad.exe myfile.txt.

Nota

Il nome file deve rappresentare un file eseguibile negli Start overload userNamecon parametri, passworde domain .The file name must represent an executable file in the Start overloads that have userName, password, and domain parameters.

Quando si utilizza Start per avviare un processo, potrebbe essere necessario chiuderlo o rischiare la perdita di risorse di sistema.Whenever you use Start to start a process, you might need to close it or you risk losing system resources. Chiudere i processi CloseMainWindow utilizzando Killo.Close processes using CloseMainWindow or Kill. È possibile verificare se un processo è già stato chiuso utilizzando la relativa HasExited proprietà.You can check whether a process has already been closed by using its HasExited property.

Sicurezza

LinkDemand
per l'attendibilità totale per il chiamante immediato.for full trust for the immediate caller. Impossibile utilizzare questo membro in codice parzialmente attendibile.This member cannot be used by partially trusted code.

Si applica a