Environment.GetCommandLineArgs Methode

Definitie

Retourneert een tekenreeksmatrix met de opdrachtregelargumenten voor het huidige proces.

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

Retouren

String[]

Een matrix met tekenreeksen waarin elk element een opdrachtregelargument bevat. Het eerste element is de naam van het uitvoerbare bestand en de volgende nul of meer elementen bevatten de resterende opdrachtregelargumenten.

Uitzonderingen

Het systeem biedt geen ondersteuning voor opdrachtregelargumenten.

Voorbeelden

In het volgende voorbeeld worden de opdrachtregelargumenten van de toepassing weergegeven.

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
'

Opmerkingen

Het eerste element in de matrix bevat de bestandsnaam van het uitvoerprogramma. Als de bestandsnaam niet beschikbaar is, is het eerste element gelijk aan String.Empty. De resterende elementen bevatten eventuele extra tokens die op de opdrachtregel zijn ingevoerd.

In .NET 5 en latere versies is voor publicatie met één bestand het eerste element de naam van het uitvoerbare hostbestand.

De bestandsnaam van het programma kan, maar is niet vereist om padgegevens op te nemen.

Opdrachtregelargumenten worden gescheiden door spaties. U kunt dubbele aanhalingstekens (") gebruiken om spaties in een argument op te nemen. Het enkele aanhalingsteken (')biedt deze functionaliteit echter niet.

Als een dubbel aanhalingsteken twee of een even aantal backslashes volgt, wordt elk backslash-paar vervangen door één backslash en wordt het dubbele aanhalingsteken verwijderd. Als een dubbel aanhalingsteken een oneven aantal backslashes volgt, inclusief slechts één, wordt elk voorgaande paar vervangen door één backslash en wordt de resterende backslash verwijderd; in dit geval wordt het dubbele aanhalingsteken echter niet verwijderd.

In de volgende tabel ziet u hoe opdrachtregelargumenten MyApp kunnen worden gescheiden en wordt ervan uitgegaan dat de huidige toepassing wordt uitgevoerd.

Invoer op de opdrachtregel Resulterende opdrachtregelargumenten
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

Gebruik de CommandLine eigenschap om de opdrachtregel als één tekenreeks te verkrijgen.

Van toepassing op

Zie ook