Compartilhar via


IMallocSpy::PreRealloc

Windows Mobile SupportedWindows Embedded CE Supported

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