選択的オプトアウト: POOL_NX_OPTOUT

No-Execute (NX) プールのオプトイン メカニズムのいずれかを、複数のドライバー ソース ファイルでグローバルに有効にしておき、そこから選択した 1 つ以上のソース ファイルに POOL_NX_OPTOUT を指定して、そのオプトイン メカニズムを無効にすることができます。 これにより、選択したソース ファイルでは、実行可能な非ページ メモリを引き続き使用できます。 オプトアウト メカニズム POOL_NX_OPTOUT は、オプトイン メカニズム POOL_NX_OPTIN または POOL_NX_OPTIN_AUTO と併用できます。 詳細については「NX プールのオプトイン メカニズム」を参照してください。

POOL_NX_OUTPUT オプトアウト メカニズムを使用して、選択したソース ファイルのオプトイン メカニズムをオーバーライドするには、このファイルに次の定義を追加します。

#define POOL_NX_OPTOUT 1

この定義は、選択したファイルのグローバル オプトイン設定をオーバーライドし、NonPagedPool 定数名のインスタンスが置き換えられるのを防ぎます。 ファイル内の NonPagedPool の最初のインスタンスの前に、この定義をファイルに挿入します。

ソース ファイルで POOL_NX_OPTOUT オプトアウト メカニズムを使用する代わりに、ファイル内の NonPagedPool の各インスタンスを NonPagedPoolExecute に明示的に置き換える方法があります。