次の方法で共有


IPNPXDeviceAssociation::Associate メソッド (pnpxassoc.h)

[関数検出は、[要件] セクションで指定したオペレーティング システムで使用できます。 以降のバージョンでは変更または使用できない場合があります。]

関連付けデータベース エントリを関連付けとしてマークし、適切な通知を送信します。 関数インスタンスの関連付けデータベース エントリがない場合は、作成されます。それ以外の場合は、既存のエントリが更新されます。 送信された通知には、プラグ アンド プレイ (PnP) コンポーネントによって報告されたデバイスのオンラインプレゼンスが反映されます。

構文

HRESULT Associate(
  [in, optional] const WCHAR                    *pszSubCategory,
  [in]           IFunctionDiscoveryNotification *pIFunctionDiscoveryNotification
);

パラメーター

[in, optional] pszSubCategory

エントリが格納されている関連付けデータベースのサブカテゴリ。 このパラメーターは、NULL でもかまいません。

[in] pIFunctionDiscoveryNotification

関数の検出で通知用に登録されている IFunctionDiscoveryNotification オブジェクト。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

リターン コード 説明
S_OK
メソッドが成功しました。
E_FAIL
メソッドが失敗しました。

注釈

このメソッドは、 IPNPXDeviceAssociation インターフェイスが取得された関数インスタンスに対応する関連付けデータベース エントリを変更します。

デバイスが関連付けられると、PnP-X サービス IP Bus 列挙子 (IPBusEnum) は PnP コンポーネントに要求を送信してデバイス devnode を作成します。 devnode が作成されると、適切な通知が送信されます。 通知に使用されるコールバック メソッドを決定するには、次のロジックを使用します。

  • デバイスが関連付けられた後に PnP 通知を受信した場合、 iFunctionDiscoveryNotification::OnUpdate メソッドが呼び出され、 enumQueryUpdateAction パラメーターが QUA_ADDに設定されます。
  • デバイスが関連付けられた後に PnP 通知を受信せず、保留中の PnP イベントがない場合は、 IFunctionDiscoveryNotification::OnError メソッドが呼び出されます。
  • 最後に、デバイスが関連付けられた後に PnP 通知を受信せず、保留中の PnP イベントがある場合、コールバック メソッドは呼び出されません。
関連付け後にデバイス ドライバーをインストールするためにユーザーの介入が必要な場合は、 新しいハードウェアの検出 ウィザードが表示されます。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー pnpxassoc.h

こちらもご覧ください

IPNPXAssociation::Associate

IPNPXDeviceAssociation