次の方法で共有


WdfObjectDereferenceWithTag マクロ

[KMDF と UMDF に適用]

WdfObjectDereferenceWithTag マクロは、指定されたフレームワーク オブジェクトの参照カウントをデクリメントし、ドライバーの現在のファイル名と行番号を参照に割り当てます。 このマクロは、参照にタグ値も割り当てられます。

構文

VOID WdfObjectDereferenceWithTag(
  [in] WDFOBJECT Handle,
  [in] PVOID     Tag
);

パラメーター

ハンドル [入力]
フレームワークオブジェクトへのハンドル。

タグ [in]
オブジェクト参照を識別するドライバー定義の値。 タグ値は、ドライバーが WdfObjectReferenceWithTag に以前に指定したタグ値と一致する必要があります。

戻り値

ありません。

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

解説

オブジェクトの参照カウントが 0 になると WdfObjectDereferenceWithTag が返される前にオブジェクトが削除される可能性があります。

WdfObjectDereference の代わりに WdfObjectDereferenceActual または WdfObjectDereferenceWithTag を呼び出すと、Microsoft デバッガーに追加情報 (タグ文字列、行番号、ファイル名) が提供されます。 WdfObjectDereferenceActual を使用すると、ドライバーで行番号とファイル名を指定できます。一方、WdfObjectDereferenceWithTag はドライバーの現在の行番号とファイル名を使用します。

!wdftagtracker デバッガー拡張機能を使用して、タグ、行番号、およびファイル名の値を表示できます。 デバッガー拡張機能は、ポインターと一連の文字の両方としてタグ値を表示します。 デバッガー拡張機能の詳細については、「KMDF ドライバーのデバッグ」をご参照ください。

オブジェクト参照カウントの詳細については、「フレームワーク オブジェクトのライフ サイクル」をご参照ください。

次のコード例では、オブジェクトの参照カウントをデクリメントし、タグ値を参照に割り当てます。

WdfObjectDereferenceWithTag(
                            object,
                            pTag
                            );

要件

対象プラットフォーム

ユニバーサル

KMDF の最小バージョン

1.0

UMDF の最小バージョン

2.0

ヘッダー

Wdfobject.h (Wdf.h を含む)

ライブラリ

Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)

IRQL

<= DISPATCH_LEVEL

関連項目

WdfObjectDereference

WdfObjectReferenceWithTag