Environment.GetCommandLineArgs Metod

Definition

Returnerar en strängmatris som innehåller kommandoradsargumenten för den aktuella processen.

public:
 static cli::array <System::String ^> ^ GetCommandLineArgs();
public static string[] GetCommandLineArgs();
static member GetCommandLineArgs : unit -> string[]
Public Shared Function GetCommandLineArgs () As String()

Returer

String[]

En matris med strängar där varje element innehåller ett kommandoradsargument. Det första elementet är det körbara filnamnet och följande noll eller fler element innehåller de återstående kommandoradsargumenten.

Undantag

Systemet stöder inte kommandoradsargument.

Exempel

I följande exempel visas programmets kommandoradsargument.

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
'

Kommentarer

Det första elementet i matrisen innehåller filnamnet för det körbara programmet. Om filnamnet inte är tillgängligt är det första elementet lika med String.Empty. De återstående elementen innehåller eventuella ytterligare token som anges på kommandoraden.

I .NET 5 och senare versioner är det första elementet namnet på den körbara värden för en filpublicering.

Programfilens namn kan, men krävs inte för, innehålla sökvägsinformation.

Kommandoradsargument avgränsas av blanksteg. Du kan använda dubbla citattecken (") för att inkludera blanksteg i ett argument. Det enkla citattecknet (') tillhandahåller dock inte den här funktionen.

Om ett dubbelt citattecken följer två eller ett jämnt antal omvänt snedstreck ersätts varje omvänt snedstreckspar med ett omvänt snedstreck och det dubbla citattecknet tas bort. Om ett dubbelt citattecken följer ett udda antal omvänt snedstreck, inklusive bara ett, ersätts varje föregående par med ett omvänt snedstreck och det återstående omvänt snedstrecket tas bort. I det här fallet tas dock inte det dubbla citattecknet bort.

I följande tabell visas hur kommandoradsargument kan avgränsas och förutsätts MyApp som det aktuella körprogrammet.

Indata på kommandoraden Resulterande kommandoradsargument
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

Använd egenskapen för att hämta kommandoraden CommandLine som en enda sträng.

Gäller för

Se även