Método IMallocSpy::P reRealloc (objidl.h)
Executa as operações necessárias antes de chamar IMalloc::Realloc.
Sintaxe
SIZE_T PreRealloc(
[in] void *pRequest,
[in] SIZE_T cbRequest,
[out] void **ppNewRequest,
[in] BOOL fSpyed
);
Parâmetros
[in] pRequest
O ponteiro para o bloco de memória especificado na chamada para IMalloc::Realloc.
[in] cbRequest
A contagem de bytes do bloco de memória conforme especificado na chamada original para IMalloc::Realloc.
[out] ppNewRequest
Endereço da variável de ponteiro que recebe um ponteiro para o bloco de memória a ser realocado. Isso poderá ser diferente do ponteiro em pRequest se a implementação do PreRealloc estender ou modificar a realocação. Esse ponteiro sempre deve ser armazenado pelo PreRealloc.
[in] fSpyed
Indica se o bloco de memória foi alocado enquanto este espião estava ativo.
Valor retornado
A contagem de bytes a ser passada para IMalloc::Realloc.
Comentários
A implementação do PreRealloc pode estender e/ou modificar a alocação para armazenar informações específicas de depuração com a alocação. Portanto, o parâmetro ppNewRequest pode ser diferente de pRequest, um ponteiro para a solicitação especificada na chamada original para Realloc.
O PreRealloc pode forçar a falha de alocação de memória retornando 0, permitindo que o teste garanta que o aplicativo trate a falha de alocação normalmente em todos os casos. Nesse caso, PostRealloc não é chamado e Realloc retorna NULL. No entanto, se Realloc encontrar uma falha de memória real e retornar NULL, PostRealloc será chamado. Forçar falha de alocação só será eficaz se cbRequest não for igual a 0.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | objidl.h |