Environment.GetCommandLineArgs Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne un tableau de chaînes contenant les arguments de la ligne de commande pour le processus en cours.
public:
static cli::array <System::String ^> ^ GetCommandLineArgs();
public static string[] GetCommandLineArgs ();
static member GetCommandLineArgs : unit -> string[]
Public Shared Function GetCommandLineArgs () As String()
Retours
Tableau de chaînes dans lequel chaque élément contient un argument de ligne de commande. Le premier élément est le nom du fichier exécutable et les éventuels éléments suivants contiennent les arguments de la ligne de commande restants.
Exceptions
Le système ne prend pas en charge les arguments de ligne de commande.
Exemples
L’exemple suivant affiche les arguments de ligne de commande de l’application.
using namespace System;
int main()
{
Console::WriteLine();
// Invoke this sample with an arbitrary set of command line arguments.
array<String^>^ arguments = Environment::GetCommandLineArgs();
Console::WriteLine( "GetCommandLineArgs: {0}", String::Join( ", ", arguments ) );
}
/*
This example produces output like the following:
C:\>GetCommandLineArgs ARBITRARY TEXT
GetCommandLineArgs: GetCommandLineArgs, ARBITRARY, TEXT
*/
using System;
class Sample
{
public static void Main()
{
Console.WriteLine();
// Invoke this sample with an arbitrary set of command line arguments.
string[] arguments = Environment.GetCommandLineArgs();
Console.WriteLine("GetCommandLineArgs: {0}", string.Join(", ", arguments));
}
}
/*
This example produces output like the following:
C:\>GetCommandLineArgs ARBITRARY TEXT
GetCommandLineArgs: GetCommandLineArgs, ARBITRARY, TEXT
*/
open System
// Invoke this sample with an arbitrary set of command line arguments.
let arguments = Environment.GetCommandLineArgs()
String.concat ", " arguments
|> printfn "\nGetCommandLineArgs: %s"
// This example produces output like the following:
// C:\>GetCommandLineArgs ARBITRARY TEXT
//
// GetCommandLineArgs: GetCommandLineArgs, ARBITRARY, TEXT
Class Sample
Public Shared Sub Main()
Console.WriteLine()
' Invoke this sample with an arbitrary set of command line arguments.
Dim arguments As String() = Environment.GetCommandLineArgs()
Console.WriteLine("GetCommandLineArgs: {0}", String.Join(", ", arguments))
End Sub
End Class
'This example produces output like the following:
'
' C:\>GetCommandLineArgs ARBITRARY TEXT
'
' GetCommandLineArgs: GetCommandLineArgs, ARBITRARY, TEXT
'
Remarques
Le premier élément du tableau contient le nom de fichier du programme en cours d’exécution. Si le nom de fichier n’est pas disponible, le premier élément est égal à String.Empty. Les éléments restants contiennent tous les jetons supplémentaires entrés sur la ligne de commande.
Dans .NET 5 et versions ultérieures, pour la publication à fichier unique, le premier élément est le nom de l’exécutable de l’hôte.
Le nom du fichier du programme peut, mais n’est pas obligatoire, inclure des informations de chemin d’accès.
Les arguments de ligne de commande sont délimités par des espaces. Vous pouvez utiliser des guillemets doubles (« ) pour inclure des espaces dans un argument. Toutefois, le guillemet simple (') ne fournit pas cette fonctionnalité.
Si un guillemet double suit deux barres obliques inverses ou un nombre pair de barres obliques inverses, chaque paire de barres obliques inverses suivant est remplacée par une barre oblique inverse et le guillemet double est supprimé. Si un guillemet double suit un nombre impair de barres obliques inverses, y compris une seule, chaque paire précédente est remplacée par une barre oblique inverse et la barre oblique inverse restante est supprimée ; Toutefois, dans ce cas, le guillemet double n’est pas supprimé.
Le tableau suivant montre comment les arguments de ligne de commande peuvent être délimités MyApp
et suppose comme application en cours d’exécution.
Entrée sur la ligne de commande | Arguments de ligne de commande résultants |
---|---|
MyApp alpha beta |
MyApp, alpha, beta |
MyApp "alpha with spaces" "beta with spaces" |
MyApp, alpha with spaces, beta with spaces |
MyApp 'alpha with spaces' beta |
MyApp, 'alpha, with, spaces', beta |
MyApp \\\alpha \\\\"beta |
MyApp, \\\alpha, \\beta |
MyApp \\\\\"alpha \"beta |
MyApp, \\"alpha, "beta |
Pour obtenir la ligne de commande sous la forme d’une chaîne unique, utilisez la CommandLine propriété .