Process.StartInfo Process.StartInfo Process.StartInfo Process.StartInfo Property

Definizione

Ottiene o imposta le proprietà da passare al metodo Start() del componente Process.Gets or sets the properties to pass to the Start() method of the Process.

public:
 property System::Diagnostics::ProcessStartInfo ^ StartInfo { System::Diagnostics::ProcessStartInfo ^ get(); void set(System::Diagnostics::ProcessStartInfo ^ value); };
[System.ComponentModel.Browsable(false)]
public System.Diagnostics.ProcessStartInfo StartInfo { get; set; }
member this.StartInfo : System.Diagnostics.ProcessStartInfo with get, set
Public Property StartInfo As ProcessStartInfo

Valore della proprietà

Oggetto ProcessStartInfo che rappresenta i dati con i quali avviare il processo.The ProcessStartInfo that represents the data with which to start the process. Tra gli argomenti sono compresi il nome del file eseguibile o il documento usato per avviare il processo.These arguments include the name of the executable file or document used to start the process.

Eccezioni

Il valore che specifica la proprietà StartInfo è null.The value that specifies the StartInfo is null.

Esempi

Nell'esempio seguente consente di popolare un StartInfo con il file da eseguire, l'azione eseguita su di esso e se è necessario Visualizza un'interfaccia utente.The following example populates a StartInfo with the file to execute, the action performed on it and whether it should displays a user interface. Per altri esempi, vedere le pagine di riferimento per le proprietà del ProcessStartInfo classe.For additional examples, refer to the reference pages for properties of the ProcessStartInfo class.

#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

StartInfo rappresenta il set di parametri da usare per avviare un processo.StartInfo represents the set of parameters to use to start a process. Quando Start viene chiamato, il StartInfo viene usato per specificare il processo di avvio.When Start is called, the StartInfo is used to specify the process to start. Il solo caso di necessità StartInfo membro da impostare è il FileName proprietà.The only necessary StartInfo member to set is the FileName property. Avvio di un processo specificando il FileName proprietà è simile a digitare le informazioni contenute nel eseguire finestra di dialogo di Windows avviare menu.Starting a process by specifying the FileName property is similar to typing the information in the Run dialog box of the Windows Start menu. Pertanto, il FileName proprietà non è necessario rappresentare un file eseguibile.Therefore, the FileName property does not need to represent an executable file. Può trattarsi 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 FileName possono avere estensione txt se si sono associati file di testo con un editor, ad esempio Blocco note, oppure se si dispone di file doc con uno strumento di elaborazione di testi, ad esempio Microsoft Word può avere un file con estensione doc.For example the FileName 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. Allo stesso modo, nello stesso modo in cui il eseguiti nella finestra di dialogo può accettare un nome del file eseguibile con o senza l'estensione .exe, l'estensione .exe è facoltativa nel FileName membro.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 member. Ad esempio, è possibile impostare il FileName proprietà su "Notepad.exe" o "Notepad".For example, you can set the FileName property to either "Notepad.exe" or "Notepad".

È possibile avviare un'applicazione ClickOnce mediante l'impostazione di FileName proprietà nel percorso (ad esempio, un indirizzo Web) da cui è stato installato l'applicazione.You can start a ClickOnce application by setting the FileName property to the location (for example, a Web address) from which you originally installed the application. Avviare un'applicazione ClickOnce, specificando il percorso di installazione sul disco rigido.Do not start a ClickOnce application by specifying its installed location on your hard drive.

Se il nome del file implica un file eseguibile, ad esempio un file con estensione doc, è possibile includere un verbo che specifica l'azione da eseguire sul file.If the file name involves a nonexecutable file, such as a .doc file, you can include a verb specifying what action to take on the file. Ad esempio, è possibile impostare il Verb a "Print" per un file che terminano con l'estensione di file con estensione doc.For example, you could set the Verb to "Print" for a file ending in the .doc extension. Il nome del file specificato nella FileName proprietà non è necessario avere un'estensione, se si immette manualmente un valore per il Verb proprietà.The file name specified in the FileName property does not need to have an extension if you manually enter a value for the Verb property. Tuttavia, se si usa il Verbs proprietà per determinare i verbi sono disponibili, è necessario includere l'estensione.However, if you use the Verbs property to determine what verbs are available, you must include the extension.

È possibile modificare i parametri specificati nel StartInfo proprietà fino all'ora che si chiama il Start metodo sul processo.You can change the parameters specified in the StartInfo property up to the time that you call the Start method on the process. Dopo avere avviato il processo, la modifica di StartInfo valori non influisce o riavviare il processo associato.After you start the process, changing the StartInfo values does not affect or restart the associated process. Se si chiama il Start(ProcessStartInfo) metodo con il ProcessStartInfo.UserName e ProcessStartInfo.Password non gestita, le proprietà impostate CreateProcessWithLogonW funzione viene chiamata, che avvia il processo di una nuova finestra, anche se la CreateNoWindow valore della proprietà è true o la WindowStyle valore della proprietà è Hidden.If you call the Start(ProcessStartInfo) method with the ProcessStartInfo.UserName and ProcessStartInfo.Password properties set, the unmanaged CreateProcessWithLogonW function is called, which starts the process in a new window even if the CreateNoWindow property value is true or the WindowStyle property value is Hidden.

Se non è stata usata la Start metodo per avviare un processo, il StartInfo proprietà non riflette i parametri utilizzati per avviare il processo.If you did not use the Start method to start a process, the StartInfo property does not reflect the parameters used to start the process. Ad esempio, se si usa GetProcesses per ottenere una matrice di processi in esecuzione nel computer, il StartInfo proprietà di ciascuno Process non contiene il nome del file originale o argomenti utilizzati per avviare il processo.For example, if you use GetProcesses to get an array of processes running on the computer, the StartInfo property of each Process does not contain the original file name or arguments used to start the process.

Quando viene avviato il processo, il nome del file è il file che popola la (sola lettura) MainModule proprietà.When the process is started, the file name is the file that populates the (read-only) MainModule property. Se si desidera recuperare il file eseguibile che è associato il processo dopo aver avviato il processo, usare il MainModule proprietà.If you want to retrieve the executable file that is associated with the process after the process has started, use the MainModule property. Se si desidera impostare il file eseguibile di un Process dell'istanza per cui non è stato avviato un processo associato, usare il StartInfo della proprietà FileName membro.If you want to set the executable file of a Process instance for which an associated process has not been started, use the StartInfo property's FileName member. Poiché i membri del StartInfo proprietà sono gli argomenti passati al Start metodo di un processo, la modifica il FileName proprietà dopo aver avviato il processo associato non verrà reimpostato il MainModule proprietà.Because the members of the StartInfo property are arguments that are passed to the Start method of a process, changing the FileName property after the associated process has started will not reset the MainModule property. Queste proprietà vengono usate solo per inizializzare il processo associato.These properties are used only to initialize the associated process.

Sicurezza

LinkDemand
per un'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

Vedi anche