Environment.ExpandEnvironmentVariables(String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ersetzt den Namen aller Umgebungsvariablen, die in die angegebene Zeichenfolge eingebettet sind, durch die Zeichenfolgenentsprechung für den Wert der Variablen und gibt anschließend das Ergebnis als Zeichenfolge zurück.
public:
static System::String ^ ExpandEnvironmentVariables(System::String ^ name);
public static string ExpandEnvironmentVariables (string name);
static member ExpandEnvironmentVariables : string -> string
Public Shared Function ExpandEnvironmentVariables (name As String) As String
Parameter
- name
- String
Eine Zeichenfolge, die die Namen von 0 (null) oder mehr Umgebungsvariablen enthält. Jede Umgebungsvariable wird mit dem Prozentzeichen (%) angegeben.
Gibt zurück
Eine Zeichenfolge, bei der alle Umgebungsvariablen durch ihren Wert ersetzt wurden.
Ausnahmen
name
ist null
.
Beispiele
Das folgende Beispiel zeigt, wie Sie die Systemlaufwerk- und Systemstammvariablen abrufen.
// Sample for the Environment::ExpandEnvironmentVariables method
using namespace System;
int main()
{
String^ str;
String^ nl = Environment::NewLine;
Console::WriteLine();
// <-- Keep this information secure! -->
String^ query = "My system drive is %SystemDrive% and my system root is %SystemRoot%";
str = Environment::ExpandEnvironmentVariables( query );
Console::WriteLine( "ExpandEnvironmentVariables: {0} {1}", nl, str );
}
/*
This example produces the following results:
ExpandEnvironmentVariables:
My system drive is C: and my system root is C:\WINNT
*/
// Sample for the Environment.ExpandEnvironmentVariables method
using System;
class Sample
{
public static void Main()
{
// Keep this information secure!
string query = "My system drive is %SystemDrive% and my system root is %SystemRoot%";
string str = Environment.ExpandEnvironmentVariables(query);
Console.WriteLine(str);
}
}
/*
This example prints:
My system drive is C: and my system root is C:\WINDOWS
*/
// Sample for the Environment.ExpandEnvironmentVariables method
open System
let nl = Environment.NewLine
// <-- Keep this information secure! -->
let query = "My system drive is %SystemDrive% and my system root is %SystemRoot%"
let str = Environment.ExpandEnvironmentVariables query
printfn $"\nExpandEnvironmentVariables: {nl} {str}"
// This example produces the following results:
// ExpandEnvironmentVariables:
// My system drive is C: and my system root is C:\WINNT
' Sample for the Environment.ExpandEnvironmentVariables method
Class Sample
Public Shared Sub Main()
Dim str As [String]
Dim nl As [String] = Environment.NewLine
Console.WriteLine()
' <-- Keep this information secure! -->
Dim query As [String] = "My system drive is %SystemDrive% and" & _
"my system root is %SystemRoot%"
str = Environment.ExpandEnvironmentVariables(query)
Console.WriteLine("ExpandEnvironmentVariables: {0} {1}", nl, str)
End Sub
End Class
'
'This example produces the following results:
'
'ExpandEnvironmentVariables:
' My system drive is C: and my system root is C:\WINNT
'
Hinweise
COM-Interop wird verwendet, um die Umgebungsvariablen aus dem Betriebssystem abzurufen. Wenn die Umgebungsvariablen aufgrund eines COM-Fehlers nicht abgerufen werden können, wird das HRESULT, das die Fehlerursache erläutert, verwendet, um eine von mehreren möglichen Ausnahmen zu generieren. Das heißt, die Ausnahme hängt vom HRESULT ab. Weitere Informationen zur Verarbeitung des HRESULT finden Sie im Abschnitt Hinweise der Marshal.ThrowExceptionForHR -Methode.
Ersetzung erfolgt nur für festgelegte Umgebungsvariablen. Angenommen, es name
ist "MyENV = %MyENV%". Wenn die Umgebungsvariable MyENV auf 42 festgelegt ist, gibt diese Methode "MyENV = 42" zurück. Wenn MyENV nicht festgelegt ist, erfolgt keine Änderung. Diese Methode gibt "MyENV = %MyENV%" zurück.
Die Größe des Rückgabewerts ist auf 32.000 begrenzt.