Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Registra uma implementação da interface IMallocSpy , exigindo posteriormente que o OLE chame seus métodos wrapper em torno de cada chamada para o método IMalloc correspondente.
Sintaxe
HRESULT CoRegisterMallocSpy(
[in] LPMALLOCSPY pMallocSpy
);
Parâmetros
[in] pMallocSpy
Um ponteiro para uma instância da implementação IMallocSpy .
Retornar valor
Essa função pode retornar o valor retornado padrão E_INVALIDARG, bem como os valores a seguir.
| Código de retorno | Descrição |
|---|---|
|
O objeto foi registrado com êxito. |
|
O objeto já está registrado. |
Comentários
A função CoRegisterMallocSpy registra o objeto IMallocSpy , que é usado para depurar chamadas para métodos IMalloc . A função chama QueryInterface no ponteiro pMallocSpy para a interface IID_IMallocSpy. Isso é para garantir que pMallocSpy realmente aponte para uma implementação de IMallocSpy. Pelas regras do OLE, espera-se que uma chamada bem-sucedida para QueryInterface tenha adicionado uma referência (por meio do método AddRef ) ao objeto IMallocSpy . Ou seja, CoRegisterMallocSpy não chama diretamente AddRef em pMallocSpy, mas espera totalmente que a chamada QueryInterface será.
Quando o objeto IMallocSpy é registrado, sempre que há uma chamada para um dos métodos IMalloc , o OLE primeiro chama o pré-método IMallocSpy correspondente. Em seguida, depois de executar o método IMalloc , o OLE chama o pós-método IMallocSpy correspondente. Por exemplo, sempre que há uma chamada para IMalloc::Alloc, de qualquer origem, o OLE chama IMallocSpy::P reAlloc, chama Alloc e, depois que essa alocação é concluída, chama IMallocSpy::P ostAlloc.
Requisitos
| Requisito | Valor |
|---|---|
| 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 | objbase.h |
| Biblioteca | Ole32.lib |
| DLL | Ole32.dll |