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)
Library Ks.lib

另请参阅

KsAllocateDeviceHeader

KsAllocateObjectHeader

KsRecalculateStackDepth

KsSetDevicePnpAndBaseObject