ProcessStartInfo Classe

Définition

Spécifie un jeu de valeurs utilisées lors du démarrage d'un processus.

public ref class ProcessStartInfo sealed
public sealed class ProcessStartInfo
[System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public sealed class ProcessStartInfo
type ProcessStartInfo = class
[<System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))>]
type ProcessStartInfo = class
Public NotInheritable Class ProcessStartInfo
Héritage
ProcessStartInfo
Attributs

Exemples

L’exemple de code suivant montre comment utiliser la ProcessStartInfo classe pour démarrer internet Explorer. Les URL de destination sont fournies en tant qu’arguments ProcessStartInfo .

#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()
{
    // URLs 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

        ' Opens URLs and .html documents using Internet Explorer.
        Sub OpenWithArguments()
            ' URLs 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

        ' 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

        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
    End Class
End Namespace 'MyProcessSample

Remarques

ProcessStartInfo est utilisé avec le Process composant . Lorsque vous démarrez un processus à l’aide de la Process classe , vous avez accès aux informations de processus en plus de celles disponibles lors de l’attachement à un processus en cours d’exécution.

Vous pouvez utiliser la ProcessStartInfo classe pour mieux contrôler le processus que vous démarrez. Vous devez au moins définir la FileName propriété, manuellement ou à l’aide du constructeur . Le nom de fichier est n’importe quelle application ou document. Ici, un document est défini comme étant n’importe quel type de fichier auquel une action ouverte ou par défaut est associée. Vous pouvez afficher les types de fichiers inscrits et leurs applications associées pour votre ordinateur à l’aide de la boîte de dialogue Options des dossiers , qui est disponible via le système d’exploitation. Le bouton Avancé mène à une boîte de dialogue qui indique si une action ouverte est associée à un type de fichier inscrit spécifique.

En outre, vous pouvez définir d’autres propriétés qui définissent les actions à effectuer avec ce fichier. Vous pouvez spécifier une valeur spécifique au type de la FileName propriété pour la Verb propriété . Par exemple, vous pouvez spécifier « imprimer » pour un type de document. En outre, vous pouvez spécifier des Arguments valeurs de propriété comme arguments de ligne de commande à passer à la procédure ouverte du fichier. Par exemple, si vous spécifiez une application d’éditeur de texte dans la FileName propriété , vous pouvez utiliser la Arguments propriété pour spécifier un fichier texte à ouvrir par l’éditeur.

L’entrée standard est généralement le clavier, et la sortie standard et l’erreur standard sont généralement l’écran du moniteur. Toutefois, vous pouvez utiliser les RedirectStandardInputpropriétés , RedirectStandardOutputet RedirectStandardError pour que le processus obtienne une entrée à partir d’un fichier ou d’un autre appareil ou retourne la sortie. Si vous utilisez les StandardInputpropriétés , StandardOutputou StandardError sur le Process composant, vous devez d’abord définir la valeur correspondante sur la ProcessStartInfo propriété . Sinon, le système lève une exception lorsque vous lisez ou écrivez dans le flux.

Définissez la UseShellExecute propriété pour spécifier s’il faut démarrer le processus à l’aide de l’interpréteur de commandes du système d’exploitation. Si UseShellExecute a la valeur false, le nouveau processus hérite des flux d’entrée standard, de sortie standard et d’erreur standard du processus appelant, sauf si les RedirectStandardInputpropriétés , RedirectStandardOutputou RedirectStandardError sont respectivement définies sur true.

Vous pouvez modifier la valeur de n’importe quelle ProcessStartInfo propriété jusqu’au moment où le processus démarre. Après avoir démarré le processus, la modification de ces valeurs n’a aucun effet.

Important

L’utilisation d’une instance de cet objet avec des données non approuvées est un risque de sécurité. Utilisez cet objet avec des données approuvées uniquement. Pour plus d’informations, consultez Valider toutes les entrées.

Notes

Cette classe contient une demande de lien au niveau de la classe qui s’applique à tous les membres. Une SecurityException valeur est levée lorsque l’appelant immédiat n’a pas l’autorisation de confiance totale. Pour plus d’informations sur les demandes de sécurité, consultez Demandes de lien.

Constructeurs

ProcessStartInfo()

Initialise une nouvelle instance de la classe ProcessStartInfo sans spécifier le nom de fichier avec lequel démarrer le processus.

ProcessStartInfo(String)

Initialise une nouvelle instance de la classe ProcessStartInfo et spécifie un nom de fichier (d'une application ou d'un document, par exemple) avec lequel démarrer le processus.

ProcessStartInfo(String, IEnumerable<String>)

Spécifie un jeu de valeurs utilisées lors du démarrage d'un processus.

ProcessStartInfo(String, String)

Initialise une nouvelle instance de la classe ProcessStartInfo et spécifie un nom de fichier d’application avec lequel démarrer le processus, ainsi qu’un jeu d’arguments de ligne de commande à passer à l’application.

Propriétés

ArgumentList

Obtient une collection d'arguments de ligne de commande à utiliser lors du démarrage de l'application. Les chaînes ajoutées à la liste n’ont pas besoin d’être échappées au préalable.

Arguments

Obtient ou définit le jeu d’arguments de ligne de commande à utiliser lors du démarrage de l’application.

CreateNoWindow

Obtient ou définit une valeur indiquant si le processus doit démarrer dans une nouvelle fenêtre.

Domain

Obtient ou définit une valeur qui identifie le domaine à utiliser lors du démarrage du processus. Si cette valeur est null, la propriété UserName doit être spécifiée au format UPN.

Environment

Obtient les variables d’environnement qui s’appliquent à ce processus et à ses processus enfants.

EnvironmentVariables

Obtient les chemins de recherche de fichiers, les répertoires de fichiers temporaires, les options propres à l'application et d'autres informations similaires.

ErrorDialog

Obtient ou définit une valeur indiquant si une boîte de dialogue d'erreur est affichée pour l'utilisateur si le processus ne peut pas démarrer.

ErrorDialogParentHandle

Obtient ou définit le handle de fenêtre à utiliser lorsqu'une boîte de dialogue d'erreur s'affiche pour un processus qui ne peut pas démarrer.

FileName

Obtient ou définit l'application ou le document à démarrer.

LoadUserProfile

Obtient ou définit une valeur qui indique si le profil utilisateur Windows doit être chargé à partir du Registre.

Password

Obtient ou définit une chaîne sécurisée contenant le mot de passe de l'utilisateur à utiliser lors du démarrage du processus.

PasswordInClearText

Obtient ou définit le mot de passe utilisateur en texte clair à utiliser lors du démarrage du processus.

RedirectStandardError

Obtient ou définit une valeur qui indique si la sortie d'erreur d'une application est écrite dans le flux StandardError.

RedirectStandardInput

Obtient ou définit une valeur qui indique si l'entrée pour une application est lue à partir du flux StandardInput.

RedirectStandardOutput

Obtient ou définit une valeur qui indique si la sortie textuelle d’une application est écrite dans le flux StandardOutput.

StandardErrorEncoding

Obtient ou définit l'encodage recommandé pour la sortie d'erreur.

StandardInputEncoding

Obtient ou définit l'encodage recommandé pour l’entrée standard.

StandardOutputEncoding

Obtient ou définit l'encodage recommandé pour la sortie standard.

UseCredentialsForNetworkingOnly

Spécifie un jeu de valeurs utilisées lors du démarrage d'un processus.

UserName

Obtient ou définit le nom d’utilisateur à utiliser au démarrage du processus. Si vous utilisez le format UPN, user@DNS_domain_name, la propriété Domain doit avoir pour valeur null.

UseShellExecute

Obtient ou définit une valeur indiquant si le shell du système d'exploitation doit être utilisé pour démarrer le processus.

Verb

Obtient ou définit le verbe à utiliser lors de l'ouverture de l'application ou du document spécifié par la propriété FileName.

Verbs

Obtient l'ensemble de verbes associé au type de fichier spécifié par la propriété FileName.

WindowStyle

Obtient ou définit l'état de la fenêtre à utiliser lors du démarrage du processus.

WorkingDirectory

Lorsque la propriété UseShellExecute est false, obtient ou définit le répertoire de travail du processus à démarrer. Lorsque UseShellExecute est true, obtient ou définit le répertoire qui contient le processus à démarrer.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi