この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

Environment.GetEnvironmentVariable メソッド (String)

 

公開日: 2016年10月

現在のプロセスから環境変数の値を取得します。

名前空間:   System
アセンブリ:  mscorlib (mscorlib.dll 内)

public static string GetEnvironmentVariable(
	string variable
)

パラメーター

variable
Type: System.String

環境変数の名前。

戻り値

Type: System.String

variable で指定された環境変数の値。環境変数が見つからない場合は null

Exception Condition
ArgumentNullException

variablenull です。

SecurityException

呼び出し元に、この操作を実行するために必要なアクセス許可がありません。

GetEnvironmentVariable(String)メソッドは、現在のプロセスのみの環境ブロックから環境変数を取得します。 呼び出すことと等価である、GetEnvironmentVariable(String, EnvironmentVariableTarget)メソッドをtargetEnvironmentVariableTarget.Processです。 現在のプロセスの環境ブロックには、次の環境変数が含まれています。

呼び出すことによって作成された変数のみを取得するこのメソッドを使用するには、プロセスが開始した後、環境変数が作成する場合、SetEnvironmentVariable(String, String)メソッドまたはSetEnvironmentVariable(String, String, EnvironmentVariableTarget)メソッドをtargetの値。EnvironmentVariableTarget.Processです。

すべての環境変数とその値を取得する、GetEnvironmentVariablesメソッドです。

環境変数の名前は区別されません。

次の例では、GetEnvironmentVariableを取得する方法、windir環境変数は、Windows ディレクトリのパスが含まれています。

using System;
using System.IO;

public class Example
{
   public static void Main()
   {
      // Change the directory to %WINDIR%
      Environment.CurrentDirectory = Environment.GetEnvironmentVariable("windir");
      DirectoryInfo info = new DirectoryInfo(".");

      Console.WriteLine("Directory Info:   " + info.FullName);
   }
}
// The example displays output like the following:
//        Directory Info:   C:\windows

次の例が、という環境変数の値を取得しようとしています。Test1プロセスの環境ブロックからです。 変数が存在しない場合、例、およびその値を取得します。 この例では、変数の値を表示します。 呼び出して、変数の例では、作成された場合、GetEnvironmentVariables(EnvironmentVariableTarget)メソッドの各メンバーをEnvironmentVariableTarget変数を現在のプロセスの環境ブロックからのみ取得できることを確立するために列挙します。 最後に、例では、変数を作成、削除されます。

using System;

public class Example
{
   public static void Main()
   {
      string value;
      bool toDelete = false;

      // Check whether the environment variable exists.
      value = Environment.GetEnvironmentVariable("Test1");
      // If necessary, create it.
      if (value == null) {
         Environment.SetEnvironmentVariable("Test1", "Value1");
         toDelete = true;

         // Now retrieve it.
         value = Environment.GetEnvironmentVariable("Test1");
      }
      // Display the value.
      Console.WriteLine("Test1: {0}\n", value);

      // Confirm that the value can only be retrieved from the process
      // environment block.
      Console.WriteLine("Attempting to retrieve Test1 from:");
      foreach (EnvironmentVariableTarget enumValue in 
                         Enum.GetValues(typeof(EnvironmentVariableTarget))) {
         value = Environment.GetEnvironmentVariable("Test1", enumValue);
         Console.WriteLine("   {0}: {1}", enumValue, 
                           value != null ? value : "not found");
      }
      Console.WriteLine();

      // If we've created it, now delete it.
      if (toDelete) { 
         Environment.SetEnvironmentVariable("Test1", null);
         // Confirm the deletion.
         if (Environment.GetEnvironmentVariable("Test1") == null)
            Console.WriteLine("Test1 has been deleted.");
      }         
   }
}
// The example displays the following output:
//       Test1: Value1
//       
//       Attempting to retrieve Test1 from:
//          Process: Value1
//          User: not found
//          Machine: not found
//       
//       Test1 has been deleted.

EnvironmentPermission

for the ability to read the value of variable. Associated enumeration: F:System.Security.Permissions.EnvironmentPermissionAccess.Read

ユニバーサル Windows プラットフォーム
10 以降で使用可能
.NET Framework
1.1 以降で使用可能
トップに戻る
表示: