17

如何在 Windows 操作系统上找到主硬盘的驱动程序盘符?

即带Program Files,System32等的驱动器。

4

4 回答 4

29

有一个名为的环境变量SystemDrive被设置为系统驱动器(令人惊讶的是)。getenv()电话是您可以接听电话的方式。

char *sysDrive = getenv ("SystemDrive");
if (sysDrive == NULL) {
    // vote me down.
} else {
    // vote me up and use it.
}

如果您不能依赖系统驱动器上存在的特定目录,此页面列出了一系列可用的环境变量。

或者,使用 Windows API 调用SHGetSpecialFolderPath()并传入正确的CSIDL。那么你不应该依赖环境变量。

尽管请注意那些页面上这已被 Vista 中的其他功能取代(它应该仍然有效,因为此功能成为新功能的包装器)。

于 2009-05-01T05:20:52.900 回答
5

API 调用GetWindowsDirectory可能会有所帮助。您可以使用 API 进一步解析此信息以解析驱动器号信息。

于 2009-05-01T05:20:52.790 回答
2

系统驱动

程序文件

系统根

风向

不要假设 Program Files 与 Windows 位于同一驱动器上。通常是这样。通常。

于 2009-05-01T05:28:21.900 回答
0

请参阅MSDN 上的获取系统信息。它在很大程度上解释了如何深入获取系统信息。信息量很大。

于 2017-12-24T11:46:20.097 回答