SpbControllerSetTargetAttributes 函数 (spbcx.h)

SpbControllerSetTargetAttributes 方法设置对象属性,这些属性将用于 SPB 框架扩展 (SpbCx) 传递到 SPB 控制器驱动程序的所有 SPBTARGET 对象。

语法

void SpbControllerSetTargetAttributes(
  [in] WDFDEVICE              FxDevice,
  [in] PWDF_OBJECT_ATTRIBUTES ObjectAttributes
);

参数

[in] FxDevice

表示 SPB 控制器的设备对象的 WDFDEVICE 句柄。

[in] ObjectAttributes

指向调用方分配 的WDF_OBJECT_ATTRIBUTES 结构的指针,该结构包含控制器的 SPBTARGET 对象的属性。

返回值

备注

SPB 控制器驱动程序调用此方法来设置 SPBTARGET 对象的默认属性。 SPB 框架扩展 (SpbCx) 总线上由客户端打开的任何目标设备上设置这些属性 (控制器) 外围设备。

ObjectAttributes 指向 WDF_OBJECT_ATTRIBUTES 结构。 调用方之前必须调用 WDF_OBJECT_ATTRIBUTES_INIT 函数来初始化此结构。 在此调用之后,但在调用 SpbControllerSetTargetAttributes 之前,调用方可以更改此结构的以下成员的值:

  • EvtCleanupCallback
  • EvtDestroyCallback
  • ContextSizeOverride
  • ContextTypeInfo
SpbControllerSetTargetAttributes 将使用这些值作为 SPBTARGET 对象的默认属性。 但是,驱动程序无法更改 ExecutionLevelSynchronizationScopeParentObject 成员中包含的默认属性值。 这些成员必须与 WDF_OBJECT_ATTRIBUTES_INIT 函数初始化到的值保持不变。

SPB 控制器驱动程序必须在 提交 设备对象之前调用此方法,也就是说,在它从 EvtDriverDeviceAdd 回调返回或将 PDO 添加到控制器的子列表之前。 子列表表示附加到总线的设备。 有关详细信息,请参阅 枚举总线上的设备

要求

要求
最低受支持的客户端 从Windows 8开始可用。
目标平台 通用
标头 spbcx.h
Library Spbcxstubs.lib
IRQL PASSIVE_LEVEL

另请参阅

EvtDriverDeviceAdd

WDF_OBJECT_ATTRIBUTES

WDF_OBJECT_ATTRIBUTES_INIT