Environment.GetCommandLineArgs Environment.GetCommandLineArgs Environment.GetCommandLineArgs Environment.GetCommandLineArgs Method

Definition

Gibt ein Zeichenfolgenarray mit den Befehlszeilenargumenten für den aktuellen Prozess zurück.Returns a string array containing the command-line arguments for the current process.

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

Gibt zurück

String[]

Ein Array von Zeichenfolgen, in dem jedes Element ein Befehlszeilenargument enthält.An array of string where each element contains a command-line argument. Das erste Element ist der Name der ausführbaren Datei. Falls nachfolgende Elemente vorhanden sind, enthalten sie die restlichen Befehlszeilenargumente.The first element is the executable file name, and the following zero or more elements contain the remaining command-line arguments.

Ausnahmen

Das System unterstützt keine Befehlszeilenargumente.The system does not support command-line arguments.

Beispiele

Im folgenden Beispiel werden die Befehlszeilenargumente der Anwendung angezeigt.The following example displays the application's command line arguments.

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
*/
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
'    

Hinweise

Das erste Element im Array enthält den Dateinamen des ausführenden Programms.The first element in the array contains the file name of the executing program. Wenn der Dateiname nicht verfügbar ist, ist das erste Element gleich String.Empty.If the file name is not available, the first element is equal to String.Empty. Die restlichen Elemente enthalten alle zusätzlichen Token, die in der Befehlszeile eingegeben werden.The remaining elements contain any additional tokens entered on the command line.

Der Programm Dateiname kann Pfadinformationen enthalten, ist jedoch nicht erforderlich.The program file name can, but is not required to, include path information.

Befehlszeilenargumente sind durch Leerzeichen begrenzt.Command line arguments are delimited by spaces. Sie können in doppelten Anführungszeichen (") Leerzeichen innerhalb eines Arguments einschließen.You can use double quotation marks (") to include spaces within an argument. Das einfache Anführungszeichen (') bietet jedoch diese Funktionalität nicht.The single quotation mark ('), however, does not provide this functionality.

Wenn ein doppeltes Anführungszeichen auf zwei oder eine gerade Anzahl umgekehrter Schrägstriche folgt, wird jedes umgekehrte Schrägstrich paar durch einen umgekehrten Schrägstrich ersetzt, und das doppelte Anführungszeichen wird entfernt.If a double quotation mark follows two or an even number of backslashes, each proceeding backslash pair is replaced with one backslash and the double quotation mark is removed. Wenn ein doppeltes Anführungszeichen auf eine ungerade Anzahl umgekehrter Schrägstriche folgt, einschließlich nur eines, wird jedes vorangehende paar durch einen umgekehrten Schrägstrich ersetzt, und der verbleibende umgekehrte Schrägstrich wird entfernt. in diesem Fall wird das doppelte Anführungszeichen jedoch nicht entfernt.If a double quotation mark follows an odd number of backslashes, including just one, each preceding pair is replaced with one backslash and the remaining backslash is removed; however, in this case the double quotation mark is not removed.

In der folgenden Tabelle wird gezeigt, wie Befehlszeilenargumente begrenzt werden können, und es wird davon ausgegangen, dass MyApp als die aktuell ausgeführte Anwendung verwendet wirdThe following table shows how command line arguments can be delimited, and assumes MyApp as the current executing application.

Eingabe in der BefehlszeileInput at the command line Resultierende BefehlszeilenargumenteResulting command line arguments
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

Zum Abrufen der Befehlszeile als einzelne Zeichenfolge verwenden Sie die CommandLine-Eigenschaft.To obtain the command line as a single string, use the CommandLine property.

Sicherheit

EnvironmentPermission
für den Lesezugriff auf die PATH-Umgebungsvariable.for read access to the PATH environment variable. Zugehörige Enumeration: ReadAssociated enumeration: Read

Gilt für:

Siehe auch