次の方法で共有


WdfDpcCancel 関数 (wdfdpc.h)

[KMDF にのみ適用]

WdfDpcCancel メソッドは、DPC オブジェクトのスケジュールされた EvtDpcFunc コールバック関数の実行を取り消そうとします。

構文

BOOLEAN WdfDpcCancel(
  [in] WDFDPC  Dpc,
  [in] BOOLEAN Wait
);

パラメーター

[in] Dpc

フレームワーク DPC オブジェクトへのハンドル。

[in] Wait

TRUE の場合、DPC オブジェクトの EvtDpcFunc コールバック関数が取り消されるか、実行が完了するまで WdfDpcCancel メソッドが返されないことを示すブール値。 FALSE の場合、WdfDpcCancel メソッドは直ちにを返します。

戻り値

指定した DPC オブジェクトの EvtDpcFunc コールバック関数がシステムの DPC キューにある場合、WdfDpcCancelTRUE を返します。 コールバック関数が実行されていたか、実行が完了したために、コールバック関数が DPC キューにない場合、メソッドは FALSE を 返します。

ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。

注釈

指定した DPC オブジェクトの EvtDpcFunc コールバック関数がシステムの DPC キューにある場合は、キューから削除されます。 EvtDpcFunc 関数がキューにない場合は、実行中であるか、実行が完了しています。

Wait パラメーターが TRUE の場合、IRQL = PASSIVE_LEVELで WdfDpcCancel を呼び出す必要があります。 Wait パラメーターが FALSE の場合、任意の IRQL で WdfDpcCancel を呼び出すことができます。

次のコード例では、 WdfDpcCreate トピックのコード例で作成した DPC オブジェクトに関連付けられているコールバック関数の実行を取り消します。

WdfDpcCancel(
             PDevExt->CompleteWriteDpc,
             TRUE
             );

要件

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

こちらもご覧ください

EvtDpcFunc