IMallocSpy::PreRealloc
9/8/2008
Este método é chamado antes chamando o IMalloc::Alloc método.
Syntax
ULONG PreRealloc(
void* pRequest,
ULONG cbRequest,
void** ppNewRequest,
BOOL fSpyed
);
Parameters
- pRequest
[no] Ponteiro especificado no original chamar para o IMalloc::Realloc método, indicando o bloco memória para ser realocado.
- cbRequest
[no] Contagem de bytes do bloco de memória conforme especificado no original chamar para IMalloc::Realloc.
ppNewRequest
[out] Endereço do ponteiro variável que recebe um ponteiro para o real bloco memória para ser realocado.Isso pode ser diferente do ponteiro no pRequest Se a implementação de IMallocSpy::PreRealloc Estende ou modifica a realocação. Este é um ponteiro fora e sempre deve ser armazenado pelo PreRealloc.
- fSpyed
[no] TRUE se o original alocação foi feita enquanto o espião estava ativo, caso contrário FALSE.
Return Value
O real contagem de bytes a serem passados para IMalloc::Realloc.
Remarks
O IMallocSpy::PreRealloc implementação pode estender e / ou modificar a alocação para armazenar informações Debug-specific com a alocação. Assim, o ppNewRequest parâmetro pode diferir do pRequest, um ponteiro para a solicitação especificada no original chamar para IMalloc::Realloc.
PreRealloc pode forçar memória alocação falha retornando zero, permitindo que testes para garantir que o aplicativo trata falha alocação normalmente em todos os casos.
Neste maiúsculas e minúsculas, PostRealloc Não é chamado e Realloc retorna NULL. No entanto, se IMalloc::Realloc encontrar uma falha memória real e retorna NULL, PostRealloc é chamado.
Forçar falha alocação vigora apenas se cbRequest não é igual a zero.
Para determinar se a plataforma oferece suporte a esta interface, consulte Determinando suporte COM APIs.
Requirements
Header | objidl.h, objidl.idl |
Library | ole32.lib |
Windows Embedded CE | Windows CE 3.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |
See Also
Reference
CoRegisterMallocSpy
CoRevokeMallocSpy
IMalloc::Alloc
IMalloc::Realloc
IMallocSpy::PostRealloc