次の方法で共有


FltCheckAndGrowNameControl 関数 (fltkernel.h)

FltCheckAndGrowNameControl ルーチンは、FLT_NAME_CONTROL構造体内のバッファーが、指定したバイト数を保持するのに十分な大きさであるかどうかを確認します。 そうでない場合は、 FltCheckAndGrowNameControl によって、より大きなシステム割り当てバッファーに置き換えられます。

構文

NTSTATUS FLTAPI FltCheckAndGrowNameControl(
  [in, out] PFLT_NAME_CONTROL NameCtrl,
  [in]      USHORT            NewSize
);

パラメーター

[in, out] NameCtrl

ファイル名情報を含む FLT_NAME_CONTROL 構造体へのポインター。

[in] NewSize

新しい名前制御バッファーの必要なサイズ (バイト単位)。

戻り値

FltCheckAndGrowNameControl は、次のようなSTATUS_SUCCESSまたは適切な NTSTATUS 値を返します。

リターン コード 説明
STATUS_INSUFFICIENT_RESOURCES
空きプールに要求を満たすメモリが不足しています。

注釈

ミニフィルター ドライバーは、FLT_NAME_CONTROL構造体の Name メンバー内のバッファーを直接解放または置換しようとしないでください。 代わりに、ミニフィルター ドライバーは FltCheckAndGrowNameControl を呼び出して、より大きな名前バッファーを取得する必要があります。

NameCtrl 構造体のバッファーのサイズ (バイト単位) が NewSize パラメーターの値より小さい場合、FltCheckAndGrowNameControl は、より大きなシステム割り当てバッファーに置き換えます。 FltCheckAndGrowNameControl は 、古いバッファーの内容を新しいバッファーにコピーし、古いバッファーを解放します。

NameCtrl 構造体のバッファーのサイズ (バイト単位) が NewSize パラメーターの値以上の場合、FltCheckAndGrowNameControl はSTATUS_SUCCESSを返し、バッファーを置き換えません。

要件

要件
対象プラットフォーム ユニバーサル
Header fltkernel.h (Fltkernel.h を含む)
Library FltMgr.lib
IRQL <= APC_LEVEL

こちらもご覧ください

FLT_NAME_CONTROL

FltGetFileNameFormat

FltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetFileNameQueryMethod