1

以下のステートメントを使用して EnvironmentVariable "CSIDL_COMMON_APPDATA" を取得しようとしています

System.Environment.GetEnvironmentVariable("CSIDL_COMMON_APPDATA");

「C:\ProgramData\」が返されることを期待していました。しかし、Windows 7 32 ビット マシンで C# プログラムを実行していると null が表示されます。助けてください。

4

1 に答える 1

7

CSIDL_COMMON_APPDATAは環境変数ではなく、SHGetFolderPath()winapi関数に渡す定数です。C#では、Environment.GetFolderPath()を使用してこれを行うことができます。

string path = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
Console.WriteLine(path);

通常のPCでの出力:

C:\ProgramData
于 2013-02-16T02:09:15.683 に答える