KsSetTargetDeviceObject 函数 (ks.h)

KsSetTargetDeviceObject 函数设置对象的目标设备对象。 该函数将对象标头添加到具有目标设备的对象标头列表中。

语法

KSDDKAPI VOID KsSetTargetDeviceObject(
  [in]           KSOBJECT_HEADER Header,
  [in, optional] PDEVICE_OBJECT  TargetDevice
);

参数

[in] Header

指向以前由 KsAllocateObjectHeader分配的标头。

[in, optional] TargetDevice

(可选)包含将在重新计算基础设备对象的堆栈深度时使用的目标设备对象。 如果该值 NULL,则会删除任何当前设置。 如果值不是 NULL以外的任何设置,则将替换当前设置。

返回值

没有

言论

KsSetTargetDeviceObject 函数假定调用方以前使用 KsAllocateDeviceHeader 函数在基础设备对象上分配了设备标头。 设备标头的存在允许将来调用函数 KsRecalculateStackDepth,并且当对象通过连接到另一台设备将 IRP 转发时使用设备标头,并且需要跟踪堆栈深度。

如果 KsSetDevicePnpAndBaseObject 也用于分配 PnP 对象堆栈,则重新计算堆栈深度时,也会考虑该设备对象。

要求

要求 价值
目标平台 普遍
标头 ks.h (包括 Ks.h)
Ks.lib

另请参阅

KsAllocateDeviceHeader

KsAllocateObjectHeader

KsRecalculateStackDepth

KsSetDevicePnpAndBaseObject