SetVolumeMountPointA 函数 (winbase.h)

将卷与其他卷上的驱动器号或目录相关联。

语法

BOOL SetVolumeMountPointA(
  [in] LPCSTR lpszVolumeMountPoint,
  [in] LPCSTR lpszVolumeName
);

参数

[in] lpszVolumeMountPoint

要与卷关联的用户模式路径。 这可能是驱动器号(例如,“X:\”)或另一卷上的目录(例如“Y:\MountX\”)。 字符串必须以尾随反斜杠('\')结尾。

[in] lpszVolumeName

GUID 卷的路径。 此字符串的格式必须为“\\?\Volume{GUID}\”,其中 GUID 是标识卷的 GUID。 “\\?”关闭路径分析,并作为路径的一部分被忽略,如 命名卷中所述。

返回值

如果函数成功,则返回值为非零。

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

如果 lpszVolumeMountPoint 参数包含已装载文件夹的路径,则即使目录为空,GetLastError 也会返回 ERROR_DIR_NOT_EMPTY

言论

当此函数用于将卷与另一卷上的目录相关联时,关联的目录称为 装载的文件夹

将卷与包含任何文件或子目录的目录相关联是错误的。 系统目录和隐藏目录以及其他目录都会出现此错误,系统和隐藏文件也会出现此错误。

在群集磁盘上的卷上创建装载的文件夹时,在某些情况下可能会意外删除这些文件夹。 有关如何创建和配置装载的文件夹的信息,以确保这不会发生,请参阅 群集磁盘和驱动器连接问题

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

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

SMB 不支持卷管理功能。 对于 CsvFS,不会将新的装入点复制到群集上的其他节点。

例子

有关示例,请参阅 创建装载的文件夹

注意

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

要求

要求 价值
最低支持的客户端 Windows XP [仅限桌面应用]
支持的最低服务器 Windows Server 2003 [仅限桌面应用]
目标平台 窗户
标头 winbase.h (包括 Windows.h)
Kernel32.lib
DLL Kernel32.dll

另请参阅

DeleteVolumeMountPoint

GetVolumeNameForVolumeMountPoint

GetVolumePathName

装载的文件夹

卷管理功能