Función ExAllocatePool3 (wdm.h)
La rutina ExAllocatePool3 asigna memoria de grupo del tipo especificado y devuelve un puntero al bloque asignado. Esta rutina es similar a ExAllocatePool2 , pero agrega parámetros extendidos.
Sintaxis
DECLSPEC_RESTRICT PVOID ExAllocatePool3(
POOL_FLAGS Flags,
SIZE_T NumberOfBytes,
ULONG Tag,
PCPOOL_EXTENDED_PARAMETER ExtendedParameters,
ULONG ExtendedParametersCount
);
Parámetros
Flags
Valor de tipo ULONG64 que especifica el tipo de memoria del grupo junto con los atributos obligatorios y opcionales. Se pueden combinar varios valores de marca mediante OR bit a bit. Consulte POOL_FLAGS para conocer los valores posibles.
NumberOfBytes
Especifica un número distinto de cero de bytes que se van a asignar.
Tag
Etiqueta de grupo que se va a usar para la memoria asignada. Especifique la etiqueta de grupo como un literal de carácter distinto de cero de uno a cuatro caracteres delimitado por comillas simples (por ejemplo, Tag1
). Normalmente, la cadena se especifica en orden inverso (por ejemplo, 1gaT
). Cada carácter ASCII de la etiqueta debe ser un valor del intervalo 0x20 (espacio) para 0x7E (tilde). Cada ruta de acceso de código de asignación debe usar una etiqueta de grupo única para ayudar a los depuradores y comprobadores a identificar la ruta de acceso del código.
ExtendedParameters
Puntero a una matriz de estructuras de POOL_EXTENDED_PARAMETER que especifican atributos adicionales para la asignación.
ExtendedParametersCount
Valor ULONG que especifica el número de parámetros en ExtendedParameters.
Valor devuelto
ExAllocatePool3 devuelve un puntero a la memoria asignada.
Las condiciones siguientes hacen que la función devuelva NULL de forma predeterminada. Si se especifica POOL_FLAG_RAISE_ON_FAILURE , la función genera una excepción.
- Memoria suficiente
- La etiqueta se establece en 0 o se especifican POOL_FLAGS no válidos.
- Estructuras de POOL_EXTENDED_PARAMETER no válidas
Comentarios
Si va a compilar un controlador destinado a versiones de Windows anteriores a Windows 10, versión 2004, use ExAllocatePoolPriorityZeroExAllocatePoolPriorityUninitialized.
Consulte los comentarios de ExAllocatePool2 para obtener información adicional.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10, versión 2004 |
Plataforma de destino | Universal |
Encabezado | wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL (consulte la sección Comentarios) |
Reglas de cumplimiento de DDI | HwStorPortProhibitedDIs, SpNoWait, StorPortStartIo |