Функция IoGetDiskDeviceObject (ntifs.h)

Подпрограмма IoGetDiskDeviceObject извлекает указатель на объект дискового устройства, связанный с данным объектом устройства тома файловой системы.

Синтаксис

NTSTATUS IoGetDiskDeviceObject(
  [in] PDEVICE_OBJECT FileSystemDeviceObject,
       PDEVICE_OBJECT *DiskDeviceObject
);

Параметры

[in] FileSystemDeviceObject

Указатель на объект устройства файловой системы.

DiskDeviceObject

Указатель на переменную, которая получает адрес объекта устройства для объекта устройства диска.

Возвращаемое значение

IoGetDiskDeviceObject возвращает одно из следующих значений состояния:

Код возврата Описание
STATUS_INVALID_PARAMETER
Один из параметров, переданных в эту функцию, был недопустимым.
STATUS_VOLUME_DISMOUNTED
STATUS_SUCCESS

Комментарии

IoGetDiskDeviceObject возвращает указатель на объект запоминающего устройства, связанный с томом файловой системы. Устройство хранения не должно быть фактическим диском

Драйверы фильтров файловой системы обычно вызывают IoGetDiskDeviceObject для объекта устройства тома файловой системы, чтобы определить, подключен ли том.

IoGetDiskDeviceObject увеличивает количество ссылок на объект дискового устройства, на который указывает DeviceObject. Таким образом, каждый успешный вызов IoGetDiskDeviceObject должен соответствовать последующему вызову ObDereferenceObject.

Требования

Требование Значение
Минимальная версия клиента Накопительный пакет обновления Windows 2000 с пакетом обновления 4 (SP4); Windows XP
Целевая платформа Универсальное
Верхняя часть ntifs.h (включая Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

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

IoEnumerateDeviceObjectList

IoGetAttachedDevice

IoGetAttachedDeviceReference

IoGetLowerDeviceObject

ObDereferenceObject