Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
avertissement C30032 : Appel d’une fonction d’allocation de mémoire et forcer la demande de mémoire exécutable à l’aide de la directive POOL_NX_OPTOUT
BANNED_MEM_ALLOCATION_FORCE_UNSAFE
La directive de préprocesseur POOL_NX_OPTOUT empêche la promotion automatique de types non sécurisés (MM_PAGE_PRIORITY et POOL_TYPE) aux types sécurisés (par exemple, NonPagedPool à NonPagedPoolNx). L’utilisation de POOL_NX_OPTOUT dans vos sources est probablement par conception. S’il s’agit de la conception et de la mémoire exécutable requise, vous pouvez supprimer l’avertissement avec Pragma Prefast to Suppress Warning Messages. Ce type d’allocation n’est pas autorisé sur les systèmes Windows 10 qui ont opté pour des protections de mémoire supplémentaires.
exemple de
Le code suivant génère cet avertissement :
Dans le fichier sources :
C_DEFINES=$(C_DEFINES) –DUNICODE -DPOOL_NX_OPTOUT=1
dans le fichier de code :
pPtr = MmGetSystemAddressForMdlSafe( pMdl, NormalPagePriority);
Le code suivant évite cet avertissement :
Dans le fichier sources, ajoutez :
C_DEFINES=$(C_DEFINES) -DUNICODE -DPOOL_NX_OPTIN_AUTO=1
dans le fichier de code :
pPtr = MmGetSystemAddressForMdlSafe( pMdl, NormalPagePriority);