Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
ExCreatePool cria uma instância de pool do tipo solicitado.
Sintaxe
NTSTATUS ExCreatePool(
ULONG Flags,
ULONG_PTR Tag,
POOL_CREATE_EXTENDED_PARAMS *Params,
HANDLE *PoolHandle
);
Parâmetros
Flags
[in] Máscara de bits especificando o tipo de pool e as opções de criação opcionais. Exatamente um sinalizador de tipo de pool deve ser especificado. Os seguintes valores são mutuamente exclusivos:
| Valor | Descrição |
|---|---|
| POOL_CREATE_FLG_SECURE_POOL | Cria uma instância de pool segura. Um nome de pool NÃO deve ser fornecido quando esse sinalizador é usado. |
| POOL_CREATE_FLG_PAGED_POOL | Cria uma instância de pool de páginas privada. Um nome de pool DEVE ser fornecido por meio de um parâmetro estendido. As alocações podem residir na memória paginável. |
| POOL_CREATE_FLG_NONPAGED_POOL | Cria uma instância de pool nãopagado privado. Um nome de pool DEVE ser fornecido por meio de um parâmetro estendido. As alocações permanecem residentes na memória nãopagada. |
Tag
[in] Marcação (valor de quatro caracteres, armazenado no formato little-endian) para associar ao pool.
Params
[in, opcional] Ponteiro para uma estrutura POOL_CREATE_EXTENDED_PARAMS que fornece parâmetros de criação estendidos para o tipo de pool fornecido. Esse parâmetro pode ser NULL. Um parâmetro de nome pode ser fornecido sujeito a estas regras: necessário para pools paginados e nãopagados; não permitido para pools seguros; apenas um parâmetro de nome permitido; Tipos de parâmetro sem suporte são rejeitados.
PoolHandle
[out] Recebe a alça opaca para o pool recém-criado com êxito.
Valor de retorno
Retorna um valor NTSTATUS, como um dos valores a seguir.
| Código de retorno | Descrição |
|---|---|
| STATUS_SUCCESS | Pool criado com êxito e PoolHandle é válido. |
| STATUS_INVALID_PARAMETER_1 | A especificação de tipo de pool em Sinalizadores era inválida. |
| STATUS_INVALID_PARAMETER_3 | Parâmetros estendidos inválidos (nome necessário ausente, nome não permitido, nome duplicado ou tipo de parâmetro sem suporte). |
| Outros códigos de status | Ocorreu um erro durante a criação. |
Observações
O ExCreatePool cria uma instância de pool do tipo solicitado (seguro, paginado ou nãopagado) e retorna uma alça opaca que pode ser usada com rotinas de gerenciamento de pool. O chamador especifica um tipo de pool por meio de sinalizadores e pode fornecer parâmetros estendidos opcionais.
Exatamente um sinalizador de tipo de pool deve estar presente em Sinalizadores. Um nome de pool é necessário para pools paginados e nãopagados e deve ser omitido para pools seguros.
Parâmetros estendidos são opcionais quando nenhum nome é exigido pelo tipo de pool escolhido. O identificador retornado deve ser liberado usando a rotina de gerenciamento de pool apropriada quando não for mais necessário.
A alocação do pool é feita chamando ExAllocatePool2.
Requisitos
| Requisito | Valor |
|---|---|
| servidor com suporte mínimo | Windows Server 2022 |
| cabeçalho | wdm.h (inclua Wdm.h) |
| IRQL | PASSIVE_LEVEL |
Consulte também
POOL_CREATE_EXTENDED_PARAMS