IOCTL_VOLUME_OFFLINE IOCTL (winioctl.h)

使卷脱机。

Windows Server 2003 和 Windows XP: 动态磁盘不支持此控制代码。

若要执行此操作,请使用以下参数调用 DeviceIoControl 函数。

BOOL DeviceIoControl(
  (HANDLE) hDevice,             // handle to device
  IOCTL_VOLUME_OFFLINE,         // dwIoControlCode
  NULL,                         // lpInBuffer
  0,                            // nInBufferSize
  NULL,                         // lpOutBuffer 
  0,                            // nOutBufferSize
  (LPDWORD) lpBytesReturned,    // number of bytes returned
  (LPOVERLAPPED) lpOverlapped   // OVERLAPPED structure
);

注解

应用程序必须先通过 FSCTL_DISMOUNT_VOLUME 成功卸载文件系统,然后才能使用 IOCTL_VOLUME_OFFLINE

当卸载联机卷时,对打开卷的下一次调用会导致装载该卷。 使用用于卸载的同一卷句柄使卷脱机,可防止再次装载已卸载的卷。

当卷处于联机状态时,将遵循发送到该卷的所有请求。

当卸载联机卷时,对打开卷的下一次调用会导致装载该卷。 使卷脱机可防止再次装载已卸载的卷。

若要使卷联机,请使用 IOCTL_VOLUME_ONLINE 控制代码。

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

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

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 winioctl.h (包括 Windows.h)

另请参阅