GetLogicalDriveStringsW 函数 (fileapi.h)

使用指定系统中有效驱动器的字符串填充缓冲区。

Syntax

DWORD GetLogicalDriveStringsW(
  [in]  DWORD  nBufferLength,
  [out] LPWSTR lpBuffer
);

参数

[in] nBufferLength

TCHARlpBuffer 指向的缓冲区的最大大小。 此值包括终止 null 字符的空间。 如果此参数为零,则不使用 lpBuffer

[out] lpBuffer

指向一个缓冲区的指针,该缓冲区接收一系列以 null 结尾的字符串,一个用于系统中每个有效驱动器,另外还有一个 null 字符。 每个字符串都是设备名称。

返回值

如果函数成功,则返回值为复制到缓冲区的字符串的长度(以字符为单位),不包括终止 null 字符。 请注意,ANSI-ASCII null 字符使用一个字节,但 Unicode (UTF-16) null 字符使用两个字节。

如果缓冲区不够大,则返回值大于 nBufferLength。 它是保存驱动器字符串所需的缓冲区大小。

如果函数失败,则返回值为零。 若要获取扩展的错误信息,请使用 GetLastError 函数。

注解

无论需要根目录(例如 GetDriveTypeGetDiskFreeSpace 函数),缓冲区中的每个字符串都可以使用。

此函数返回全局和本地 MS-DOS 设备命名空间中的驱动器串联。 如果这两个命名空间中都存在驱动器,此函数将返回本地 MS-DOS 设备命名空间中的条目。 有关详细信息,请参阅 定义 MS DOS 设备名称

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

科技 已支持
服务器消息块 (SMB) 3.0 协议 No
SMB 3.0 透明故障转移 (TFO) No
具有横向扩展文件共享的 SMB 3.0 (SO) No
群集共享卷文件系统 (CsvFS) 是的
可复原文件系统 (ReFS) 是的
 

SMB 不支持卷管理功能。

例子

有关示例,请参阅 从文件句柄获取文件名

要求

Requirement 价值
最低支持的客户端 Windows XP [仅限桌面应用]
支持的最低服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows操作系统
Header fileapi.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

GetDiskFreeSpace

GetDriveType

GetLogicalDrives

卷管理功能