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 控件程序代碼。
傳遞至 DeviceIoControl 的 hDevice 句柄必須是磁碟區的句柄,才能直接存取。 若要擷取此句柄,請使用設定為下列格式的字串,呼叫 lpFileName 參數的 CreateFile:
\.\X:
其中 X 是硬碟分區字母、磁碟驅動器或 CD-ROM 磁碟驅動器。 應用程式也必須在 CreateFile 的 dwShareMode 參數中指定FILE_SHARE_READ和FILE_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) |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應