FSCTL_UNLOCK_VOLUME IOCTL (winioctl.h)

解除鎖定磁碟區。

若要執行這項作業,請使用下列參數呼叫 DeviceIoControl 函式。

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

如果要求成功,Irp-IoStatus.Status> 會設定為 STATUS_SUCCESS。

否則,狀態為適當的錯誤狀況為NTSTATUS程式碼。

如需詳細資訊,請參閱 NTSTATUS值

備註

若要鎖定磁碟區,請使用 FSCTL_LOCK_VOLUME 控件程序代碼。

傳遞至 DeviceIoControlhDevice 句柄必須是磁碟區的句柄,才能直接存取。 若要擷取此句柄,請使用設定為下列格式的字串,呼叫 lpFileName 參數的 CreateFile

\.\X

其中 X 是硬碟分區字母、磁碟驅動器或 CD-ROM 磁碟驅動器。 應用程式也必須在 CreateFiledwShareMode 參數中指定FILE_SHARE_READFILE_SHARE_WRITE旗標。

IIn Windows 8 和 Windows Server 2012,下列技術支援此程序代碼。

技術 支援
伺服器消息塊 (SMB) 3.0 通訊協定 No
SMB 3.0 透明故障轉移 (TFO) No
具有向外延展檔案共用的SMB 3.0 (SO) No
叢集共用磁碟區文件系統 (CsvFS) 請參閱批注
 

PNP 通知只會在發出 FSCTL 的節點上發出。

取得 CSV 磁碟區的鎖定之後,您必須先關閉用來鎖定該磁碟區的句柄,才能開啟磁碟區的句柄。 使用 FSCTL_UNLOCK_VOLUME 解除鎖定磁碟區並不夠。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
標頭 winioctl.h (包含 Windows.h)

另請參閱

CreateFile

DeviceIoControl

FSCTL_LOCK_VOLUME

磁碟區管理控制碼