3

私は列挙のほとんどを試してきましたが、列挙のみEnviroment.SpecialFolderで達成したいことの方法はないと思います。この方法を使用すると、これまでで最も困難でした。string.Substring()

Windowsが実際にインストールされているシステムパーティションパスだけを取得しようとしています。マシン A ではそうかもしれませんがC:\、マシン B ではそうかもしれませんD:\

これまでに見つけた最も十分な解決策は

var path = Environment.GetFolderPath(Environment.SpecialFolder.Windows)
                      .Substring(0, 3);

これを行うより良い方法はありますか?ありがとう。

4

2 に答える 2

8

ドライブを取得するには、 を使用しますPath.GetPathRoothttp://msdn.microsoft.com/en-us/library/system.io.path.getpathroot.aspxを参照してください。

var root = Path.GetPathRoot(Environment.GetFolderPath(Environment.SpecialFolder.Windows));
于 2013-02-05T17:58:21.430 に答える
3

「Environment.SpecialFolder.Windows のディスク」が必要な場合は、サンプルで問題ありません。

Substringの代わりに Path.GetPathRootを使用することもできます...

ルートドライブには自分で何も書き込んではいけないことに注意してください (プログラムが適切に動作するように設計されている場合)。

于 2013-02-05T17:59:09.600 に答える