Función MmProtectMdlSystemAddress (wdm.h)
La rutina MmProtectMdlSystemAddress establece el tipo de protección de un intervalo de direcciones de memoria.
Sintaxis
NTSTATUS MmProtectMdlSystemAddress(
[in] PMDL MemoryDescriptorList,
[in] ULONG NewProtect
);
Parámetros
[in] MemoryDescriptorList
Especifica el intervalo de direcciones de memoria para el que se va a establecer el tipo de protección.
[in] NewProtect
Especifica la nueva configuración de protección para las páginas de memoria. Los controladores deben especificar uno de los valores siguientes:
PAGE_NOACCESS
Las páginas de memoria subyacentes no se pueden leer ni escribir.
PAGE_READONLY
Las páginas de memoria subyacentes solo se pueden leer, no escribir.
PAGE_READWRITE
Las páginas de memoria subyacentes se pueden leer o escribir.
PAGE_EXECUTE
Las páginas de memoria subyacentes se pueden ejecutar, pero no leer ni escribir.
PAGE_EXECUTE_READ
Las páginas de memoria subyacentes se pueden ejecutar o leer, pero no escribir.
PAGE_EXECUTE_READWRITE
Las páginas de memoria subyacentes se pueden ejecutar, leer o escribir.
Valor devuelto
MmProtectMdlSystemAddress devuelve un código NTSTATUS. Los valores devueltos posibles incluyen:
Código devuelto | Descripción |
---|---|
|
La rutina cambió correctamente el tipo de protección para el intervalo de direcciones de memoria. |
|
El valor especificado para NewProtect no es válido para esta rutina. |
|
MdL aún no se ha asignado. MmProtectMdlSystemAddress solo se puede usar en MDL que ya se han asignado. |
Comentarios
La rutina MmProtectMdlSystemAddress solo se puede llamar en una MDL que ya se ha asignado. Por ejemplo, se puede llamar a la rutina en una MDL asignada por MmMapLockedPagesSpecifyCache.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows XP y versiones posteriores de Windows. |
Plataforma de destino | Universal |
Encabezado | wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <=DISPATCH_LEVEL |