C30032
peringatan C30032: Memanggil fungsi alokasi memori dan memaksa permintaan memori yang dapat dieksekusi melalui penggunaan direktif POOL_NX_OPTOUT
BANNED_MEM_ALLOCATION_FORCE_UNSAFE
Direktif pra-prosesor POOL_NX_OPTOUT mencegah promosi otomatis jenis yang tidak aman (MM_PAGE_PRIORITY dan POOL_TYPE) ke jenis yang aman (misalnya, NonPagedPool ke NonPagedPoolNx). Penggunaan POOL_NX_OPTOUT di sumber Anda kemungkinan berdasarkan desain. Jika ini berdasarkan desain dan memori yang dapat dieksekusi diperlukan, maka Anda dapat menekan peringatan dengan Pragma Prefast untuk Menekan Pesan Peringatan. Jenis alokasi ini tidak diizinkan pada sistem Windows 10 yang telah memilih untuk perlindungan memori tambahan.
Contoh
Kode berikut menghasilkan peringatan ini:
Dalam file sumber:
C_DEFINES=$(C_DEFINES) –DUNICODE -DPOOL_NX_OPTOUT=1
dalam file kode:
pPtr = MmGetSystemAddressForMdlSafe( pMdl, NormalPagePriority);
Kode berikut menghindari peringatan ini:
Dalam file sumber, tambahkan:
C_DEFINES=$(C_DEFINES) -DUNICODE -DPOOL_NX_OPTIN_AUTO=1
dalam file kode:
pPtr = MmGetSystemAddressForMdlSafe( pMdl, NormalPagePriority);
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk