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 SP4 更新汇总;Windows XP
目标平台 普遍
标头 ntifs.h (include Ntifs.h)
NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

另请参阅

IoEnumerateDeviceObjectList

IoGetAttachedDevice

IoGetAttachedDeviceReference

IoGetLowerDeviceObject

ObDereferenceObject