Função KeExpandKernelStackAndCallout (ntddk.h)
A rotina KeExpandKernelStackAndCallout chama uma rotina com uma quantidade garantida de espaço na pilha.
Sintaxe
NTSTATUS
KeExpandKernelStackAndCallout (
_In_ PEXPAND_STACK_CALLOUT Callout,
_In_opt_ PVOID Parameter,
_In_ SIZE_T Size
);
Parâmetros
[in] Callout
Ponteiro para uma rotina de ExpandedStackCall.
[in, optional] Parameter
Especifica o parâmetro a ser passado para a rotina de ExpandedStackCall.
[in] Size
Especifica o número de bytes na pilha a ser fornecida à rotina ExpandedStackCall. Esse valor deve ser grande o suficiente para acomodar o uso de pilha do rotina de ExpandedStackCall e qualquer chamada que essa rotina possa fazer. Esse valor não deve exceder MAXIMUM_EXPANSION_SIZE.
Valor de retorno
Retorna êxito se a alocação de pilha for bem-sucedida e o texto explicativo tiver sido chamado. Caso contrário, retornará um status de falha.
Observações
KeExpandKernelStackAndCallout expande a pilha de kernel Tamanho bytes para uso pela rotina de ExpandedStackCall. Se não houver espaço suficiente disponível na pilha, KeExpandKernelStackAndCallout alocará um novo segmento de pilha de kernel. Em seguida, a rotina chama a rotina ExpandedStackCall.
No Windows 7, Windows Server 2008 R2 e versões posteriores do Windows, considere usar a rotina dekeexpandKernelStackAndCalloutExem vez de KeExpandKernelStackAndCallout. KeExpandKernelStackAndCalloutEx é semelhante a KeExpandKernelStackAndCallout, mas tem parâmetros adicionais e pode ser chamado em IRQL <= DISPATCH_LEVEL.
O thread de chamada não deve chamar a rotina de PsTerminateSystemThread até que a rotina de ExpandedStackCall do do thread seja retornada. PsTerminateSystemThread verifica se a rotina ExpandedStackCall ainda está ativa e, se estiver, causará uma verificação de bug.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows Server 2003 em processadores baseados em x64 e começando com o Windows Vista em todos os processadores. |
da Plataforma de Destino | Universal |
cabeçalho | ntddk.h (inclua Ntddk.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |