System.Environment.ExpandEnvironmentVariables 方法

方法描述

将嵌入到指定字符串中的每个环境变量的名称替换为该变量的值的等效字符串,然后返回结果字符串。

语法定义(C# System.Environment.ExpandEnvironmentVariables 方法 的用法)

public static string ExpandEnvironmentVariables(
	string name
)

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
name System-String 包含零个或多个环境变量名的字符串。每个环境变量都用百分号 (%) 引起来。
返回值 System.String 一个字符串,其中的每个环境变量均被替换为该变量的值。

提示和注释

COM 互操作用于从操作系统中检索环境变量。 如果由于 COM 错误不能检索环境变量,则使用解释失败原因的 HRESULT 生成几个可能的异常之一;即异常取决于 HRESULT。 有关如何处理 HRESULT 的更多信息,请参见 Marshal.ThrowExceptionForHR 方法的“备注”部分。

只有经过设置的环境变量才会被替换。 例如,假设 name 是“MyENV = %MyENV%”。 如果环境变量 MyENV 设置为 42,则此方法返回“MyENV = 42”。 如果未设置 MyENV,则不发生任何更改;此方法将返回“MyENV = %MyENV%”。

返回值的大小在 Windows NT 4.0 或更早版本以及 Windows 2000 和更新版本中限制为 32K。 在 Windows 98 和 Windows Me 中没有大小限制。

System.Environment.ExpandEnvironmentVariables 方法例子

下面的示例显示如何获得系统驱动器和系统根变量。

// Sample for the Environment.ExpandEnvironmentVariables method
using System;

class Sample 
{
    public static void 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
*/

异常

异常 异常描述
ArgumentNullException name 为 null。

命名空间

namespace: System

程序集: mscorlib(在 mscorlib.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0、1.1、1.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。