C28171

警告 C28171: この関数には、PAGED_CODE または PAGED_CODE_LOCKED のインスタンスが複数存在します

この警告は、関数内に PAGED_CODE または PAGED_CODE_LOCKED マクロのインスタンスが複数あることを示します。 このエラーは、PAGED_CODE または PAGED_CODE_LOCKED マクロの 2 番目以降のインスタンスが検出されたときに報告されます。

paged セクション内の関数にある PAGED_CODE マクロまたは PAGED_CODE_LOCKED マクロのインスタンスは、1 つだけである必要があり、マクロの位置は関数の先頭、つまり最初の中かっこ ({) と最初の条件ステートメントの間で、すべての宣言の後にする必要があります。

PREfast for Drivers でこれらのマクロを使用するのは、#pragma alloc_text または #pragma code_seg により、ページング可能なコード セクションに関数を移動するときです。 コード分析ツールでは、セクション名が PAGE で始まるときに、セクションがページング可能であると見なされます。 詳細については、警告 C28170 を参照してください。