getDriveTypeA 函数 (fileapi.h)

确定磁盘驱动器是可移动的、固定的、CD-ROM、RAM 磁盘,还是网络驱动器。

若要确定驱动器是否为 USB 类型的驱动器,请调用 SetupDiGetDeviceRegistryProperty 并指定 SPDRP_REMOVAL_POLICY 属性。

语法

UINT GetDriveTypeA(
  [in, optional] LPCSTR lpRootPathName
);

参数

[in, optional] lpRootPathName

驱动器的根目录。

尾随反斜杠是必需的。 如果此参数为 NULL,则该函数使用当前目录的根目录。

返回值

返回值指定驱动器的类型,可以是以下值之一。

返回代码/值 说明
DRIVE_UNKNOWN
0
无法确定驱动器类型。
DRIVE_NO_ROOT_DIR
1
根路径无效;例如,没有在指定路径装载的卷。
DRIVE_REMOVABLE
2
驱动器具有可移动媒体;例如,软盘驱动器、拇指驱动器或闪存卡读卡器。
DRIVE_FIXED
3
驱动器具有固定介质;例如,硬盘驱动器或闪存驱动器。
DRIVE_REMOTE
4
该驱动器是远程 (网络) 驱动器。
DRIVE_CDROM
5
该驱动器是 CD-ROM 驱动器。
DRIVE_RAMDISK
6
驱动器是一个 RAM 磁盘。

备注

在 Windows 8 和 Windows Server 2012 中,此函数由以下技术支持。

技术 支持
服务器消息块 (SMB) 3.0 协议
SMB 3.0 透明故障转移 (TFO)
具有横向扩展文件共享的 SMB 3.0 (SO)
群集共享卷文件系统 (CSV)
弹性文件系统 (ReFS)
 

SMB 不支持卷管理功能。

注意

fileapi.h 标头将 GetDriveType 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows XP [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2003 [桌面应用 | UWP 应用]
目标平台 Windows
标头 fileapi.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

GetDiskFreeSpace

卷管理函数