2

ユーザーが %temp% のような構成ファイルでパスを指定したとします。アドレス バーに %temp% と入力すると、そこにアクセスできます。

ただし、C# プログラムでそこに到達したい場合、そこに到達する唯一の方法はhttp://msdn.microsoft.com/en-us/library/system.environment.getfolderpath.aspxを使用することです。

%temp% や %userprofile%/local などのユーザー指定のパスを C# コード自体で解決することはできますか?

4

2 に答える 2

7

Environment.ExpandEnvironmentVariablesパス内のすべての変数を展開するために使用する必要があります。これがサービスの場合、サービスは通常、別のユーザーで実行されることを忘れないでください。

于 2013-09-26T17:50:06.000 に答える
1

を使用する必要がありますEnvironment.GetEnvironmentVariable。一

// Change the directory to %WINDIR%
Environment.CurrentDirectory = Environment.GetEnvironmentVariable("windir");
DirectoryInfo info = new DirectoryInfo(".");
lock(info)
{      
  Console.WriteLine("Directory Info:   "+info.FullName);
}
于 2013-09-26T17:50:40.450 に答える