複数のバイナリ オプトイン: POOL_NX_OPTIN_AUTO
Windows のバージョンごとにドライバー バイナリを提供するハードウェア ベンダーは、オプトイン メカニズム POOL_NX_OPTIN_AUTO を使用できます。 この移植支援は、Windows 8 のドライバー バイナリ、およびドライバーがサポートする Windows の以前のバージョンごとのドライバー バイナリを構築します。
このオプトイン メカニズムを使用するには、オプトインするすべてのソース ファイルについて POOL_NX_OPTIN_AUTO=1 を定義します。 そのためには、ドライバー プロジェクトの適切なプロパティ ページに以下のプリプロセッサ定義を追加します。
C_DEFINES=$(C_DEFINES) -DPOOL_NX_OPTIN_AUTO=1
ほとんどのドライバーでは、この定義により、サポートする Windows のバージョンごとのバイナリを、このオプトイン メカニズムで十分に作成できます。
実装詳細
POOL_NX_OPTIN_AUTO 定義は、定数名 NonPagedPool を NonPagedPoolNx として再定義します。 再定義したプールの種類は引き続きコンパイル時定数です。 NonPagedPool 定数名のインスタンスを NonPagedPoolNx に変換するマクロは、NonPagedPoolCacheAligned のインスタンスも NonPagedPoolNxCacheAligned に変換します。