Environment.ExpandEnvironmentVariables(String) Metod

Definition

Ersätter namnet på varje miljövariabel som är inbäddad i den angivna strängen med strängens motsvarighet till variabelns värde och returnerar sedan den resulterande strängen.

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

Parametrar

name
String

En sträng som innehåller namnen på noll eller fler miljövariabler. Varje miljövariabel citeras med procentteckentecknet (%).

Returer

En sträng med varje miljövariabel ersatt av dess värde.

Undantag

name är null.

Exempel

I följande exempel visas hur du hämtar systemenheten och systemrotvariablerna.

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

Kommentarer

COM-interop används för att hämta miljövariablerna från operativsystemet. Om miljövariablerna inte kan hämtas på grund av ett COM-fel används HRESULT som förklarar orsaken till felet för att generera ett av flera möjliga undantag. Undantaget beror alltså på HRESULT. Mer information om hur HRESULT bearbetas finns i avsnittet Kommentarer i Marshal.ThrowExceptionForHR metoden.

Ersättning sker endast för miljövariabler som har angetts. Anta till exempel name att är "MyENV = %MyENV%". Om miljövariabeln MyENV är inställd på 42 returnerar den här metoden "MyENV = 42". Om MyENV inte har angetts sker ingen ändring. den här metoden returnerar "MyENV = %MyENV%".

Storleken på returvärdet är begränsad till 32 K.

Gäller för