Поделиться через


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 .

Дескриптор hDevice, передаваемый в DeviceIoControl , должен быть дескриптором тома, открытым для прямого доступа. Чтобы получить этот дескриптор, вызовите CreateFile с параметром lpFileName , для которого задана строка следующей формы:

\.\X:

где X — это буква раздела жесткого диска, дисковод гибких дисков или компакт-дисков. Приложение также должно указать флаги FILE_SHARE_READ и FILE_SHARE_WRITE в параметре dwShareModecreateFile.

В Windows 8 и Windows Server 2012 этот код поддерживается следующими технологиями.

Технология Поддерживается
Протокол SMB 3.0 Нет
Прозрачная отработка отказа (TFO) SMB 3.0 Нет
SMB 3.0 с масштабируемыми общими папками (SO) Нет
Файловая система общего тома кластера (CSVFS) См. комментарий
 

Уведомление PNP выдается только на том узле, где был выдан FSCTL.

После получения блокировки тома CSV необходимо закрыть дескриптор, используемый для блокировки этого тома, прежде чем открывать дескриптор для тома. Разблокировки тома с помощью FSCTL_UNLOCK_VOLUME недостаточно.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть winioctl.h (включая Windows.h)

См. также раздел

CreateFile

DeviceIoControl

FSCTL_LOCK_VOLUME

Управляющие коды для управления томами