Windows オペレーティング システムでメイン ハードディスクのドライバ レターを見つけるにはどうすればよいですか?
つまり、、、などのドライブProgram Files
ですSystem32
。
Windows オペレーティング システムでメイン ハードディスクのドライバ レターを見つけるにはどうすればよいですか?
つまり、、、などのドライブProgram Files
ですSystem32
。
システムドライブに設定されているという環境変数がありますSystemDrive
(驚くべきことに)。呼び出しは、getenv()
あなたがそれに到達する方法です。
char *sysDrive = getenv ("SystemDrive");
if (sysDrive == NULL) {
// vote me down.
} else {
// vote me up and use it.
}
このページには、システム ドライブに存在する特定のディレクトリに依存できない場合に使用できる環境変数が多数リストされています。
または、Windows API 呼び出しSHGetSpecialFolderPath()を使用して、正しいCSIDLを渡します。次に、環境変数に依存する必要はありません。
これらのページでは、これが Vista の他の関数に取って代わられたことに注意してください (この関数は新しい関数のラッパーになるため、引き続き機能するはずです)。
API 呼び出しGetWindowsDirectoryが役立つ場合があります。ドライブ文字情報を解析する API を使用して、この情報をさらに解析できます。
システムドライブ
プログラムファイル
システムルート
WINDIR
Program Files が Windows と同じドライブにあると想定しないでください。通常はそうです。いつもの。