Compartilhar via


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

Confira também

IMalloc::Realloc

Imallocspy

IMallocSpy::P ostRealloc