在用户提供时获取代码中的窗口特殊文件夹

本文关键字:窗口 文件夹 取代码 用户 获取 | 更新日期: 2023-09-27 18:33:00

假设用户在配置文件中指定了一个路径,如 %temp%。 我可以通过在地址栏中键入%temp%来到达那里。

但是,如果我想使用 C# 程序到达那里,我看到到达那里的唯一方法是使用 http://msdn.microsoft.com/en-us/library/system.environment.getfolderpath.aspx。

是否可以在 C# 代码本身中解析用户指定的路径,如 %temp% 或 %userprofile%/local?

在用户提供时获取代码中的窗口特殊文件夹

您应该使用 Environment.ExpandEnvironmentVariables 展开路径中的所有变量。不要忘记,如果这是一项服务,则服务通常在其他用户下运行。

你应该使用 Environment.GetEnvironmentVariable .举个例子:

// Change the directory to %WINDIR%
Environment.CurrentDirectory = Environment.GetEnvironmentVariable("windir");
DirectoryInfo info = new DirectoryInfo(".");
lock(info)
{      
  Console.WriteLine("Directory Info:   "+info.FullName);
}