无法从C#应用程序访问批处理文件中的环境变量

时间:2018-06-08 05:38:37

标签: c# batch-file cmd environment-variables command-prompt

我有一个批处理文件,并且我正在尝试访问环境变量。如果我只是点击它并运行它能够获得该变量但是当我从C#代码运行它时它无法加入环境变量并显示空白。

例如在批处理中说它的写入 - echo%ENV_VAR_NAMe% 如果我点击批次,这将有效。但是从c#代码中它显示为空白。 C#代码如下。请帮忙

<script src="https://github.com/fent/randexp.js/releases/download/v0.4.3/randexp.min.js"></script>

1 个答案:

答案 0 :(得分:0)

为什么不使用Environment.GetEnvironmentVariable()

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

请参阅MSDN