次の方法で共有


WdfFdoInitSetEventCallbacks 関数 (wdffdo.h)

[KMDF にのみ適用]

WdfFdoInitSetEventCallbacks メソッドは、フレームワーク ベースの関数ドライバーのイベント コールバック関数を、指定されたデバイスに登録します。

構文

void WdfFdoInitSetEventCallbacks(
  [in] PWDFDEVICE_INIT          DeviceInit,
  [in] PWDF_FDO_EVENT_CALLBACKS FdoEventCallbacks
);

パラメーター

[in] DeviceInit

ドライバーが EvtDriverDeviceAdd コールバック関数から取得したWDFDEVICE_INIT構造体へのポインター。

[in] FdoEventCallbacks

ドライバーによって割り当てられた WDF_FDO_EVENT_CALLBACKS 構造体へのポインター。

戻り値

なし

解説

WdfFdoInitSetEventCallbacks を呼び出す前に、ドライバーはWDF_FDO_EVENT_CALLBACKS構造体を割り当て、ドライバーのイベント コールバック関数へのポインターを構造体に入力する必要があります。

ドライバーは、WdfDeviceCreate を呼び出す前に WdfFdoInitSetEventCallbacks を呼び出す必要があります。 WdfDeviceCreate の呼び出しの詳細については、「Framework デバイス オブジェクトの作成」を参照してください。

WdfFdoInitSetEventCallbacks メソッドの詳細については、「Function Driver でのデバイス オブジェクトの作成」を参照してください。

次のコード例では、WDF_FDO_EVENT_CALLBACKS構造体を初期化し、 WdfFdoInitSetEventCallbacks を呼び出します。

WDF_FDO_EVENT_CALLBACKS fdoCallbacks;

WDF_FDO_EVENT_CALLBACKS_INIT(&fdoCallbacks);
fdoCallbacks.EvtDeviceFilterAddResourceRequirements = MyEvtDeviceFilterAddResourceRequirements;
fdoCallbacks.EvtDeviceFilterRemoveResourceRequirements = MyEvtDeviceFilterRemoveResourceRequirements;
fdoCallbacks.EvtDeviceRemoveAddedResources = MyEvtDeviceRemoveAddedResources;

WdfFdoInitSetEventCallbacks(
                            DeviceInit,
                            &fdoCallbacks
                            );

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.0
Header wdffdo.h (Wdf.h を含む)
Library Wdf01000.sys (「Framework ライブラリのバージョン管理」を参照)。
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

こちらもご覧ください

WDF_FDO_EVENT_CALLBACKS_INIT