次の方法で共有


SpbControllerSetTargetAttributes 関数 (spbcx.h)

SpbControllerSetTargetAttributes メソッドは、SPB フレームワーク拡張機能 (SpbCx) が SPB コントローラー ドライバーに配信するすべての SPBTARGET オブジェクトに使用されるオブジェクト属性を設定します。

構文

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

パラメーター

[in] FxDevice

SPB コントローラーを表すデバイス オブジェクトへの WDFDEVICE ハンドル。

[in] ObjectAttributes

コントローラーの SPBTARGET オブジェクトの属性を含む呼び出し元によって割り当てられた WDF_OBJECT_ATTRIBUTES 構造体へのポインター。

戻り値

なし

解説

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 以降で使用できます。
対象プラットフォーム ユニバーサル
Header spbcx.h
Library Spbcxstubs.lib
IRQL PASSIVE_LEVEL

こちらもご覧ください

EvtDriverDeviceAdd

WDF_OBJECT_ATTRIBUTES

WDF_OBJECT_ATTRIBUTES_INIT