IoGetAttachedDevice 函数 (ntifs.h)

IoGetAttachedDevice 例程返回指向与指定设备关联的最高级别设备对象的指针。

语法

PDEVICE_OBJECT IoGetAttachedDevice(
  [in] PDEVICE_OBJECT DeviceObject
);

参数

[in] DeviceObject

指向要为其返回最顶层附加设备的设备对象的指针。

返回值

IoGetAttachedDevice 返回附加到指定设备的最高级别设备。

注解

如果 DeviceObject 指定的设备对象没有附加其他设备对象, 则 DeviceObject 和返回的指针相等。

IoGetAttachedDevice 在以下方面不同于 IoGetAttachedDeviceReference

  • IoGetAttachedDevice 不会递增设备对象上的引用计数。 (因此不需要对 ObDereferenceObject 的匹配调用。)

  • IoGetAttachedDevice 的调用方必须确保在执行 IoGetAttachedDevice 时,不会向堆栈添加或删除任何设备对象。 无法执行此操作的调用方必须改用 IoGetAttachedDeviceReference

要求

要求
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

另请参阅

IoGetAttachedDeviceReference

ObDereferenceObject