ExFreeToLookasideListEx 関数 (wdm.h)
ExFreeToLookasideListEx ルーチンは、ルックアサイド リストにエントリを挿入します。リストがいっぱいの場合は、そのエントリに割り当てられたストレージを解放します。
構文
void ExFreeToLookasideListEx(
[in, out] PLOOKASIDE_LIST_EX Lookaside,
[in] PVOID Entry
);
パラメーター
[in, out] Lookaside
ルックアサイド リストを記述する LOOKASIDE_LIST_EX 構造体へのポインター。 この構造体は、以前は ExInitializeLookasideListEx ルーチンによって初期化されていました。
[in] Entry
解放されているルックアサイド リスト エントリへのポインター。
戻り値
なし
解説
注意事項
バージョン 22H2 Windows 11以降、この関数はインラインからエクスポートに変更されました。 その結果、最新バージョンの Windows を対象にしてドライバーをビルドすると、古い OS バージョンでは読み込みに失敗します。 Visual Studio でターゲット OS のバージョンを変更するには、[構成プロパティ] -[ドライバーの設定] ->>[全般] の順に選択します。
このルーチンは、 ExAllocateFromLookasideListEx ルーチンの以前の呼び出しによって割り当てられたルックアサイド リスト エントリを解放します。 ExFreeToLookasideListEx は、エントリのスペースがリスト内で使用可能な場合に、指定したルックアサイド リストにエントリを挿入します。 リストがいっぱいの場合 (つまり、オペレーティング システムによって決定されたエントリの最大数が既に含まれています)、 ExFreeToLookasideListEx は LookasideListFreeEx ルーチンを呼び出して、ドライバーがそのようなルーチンを提供している場合、指定したエントリのストレージを解放します。 それ以外の場合は、エントリを解放するために既定の割り当て解除ルーチンが使用されます。
ルックアサイド リストの詳細については、「Lookaside Listsの使用」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |