Funzione CoRegisterMallocSpy (objbase.h)
Registra un'implementazione dell'interfaccia IMallocSpy , quindi richiede a OLE di chiamare i metodi wrapper per ogni chiamata al metodo IMalloc corrispondente.
Sintassi
HRESULT CoRegisterMallocSpy(
[in] LPMALLOCSPY pMallocSpy
);
Parametri
[in] pMallocSpy
Puntatore a un'istanza dell'implementazione di IMallocSpy .
Valore restituito
Questa funzione può restituire il valore restituito standard E_INVALIDARG, nonché i valori seguenti.
Codice restituito | Descrizione |
---|---|
|
L'oggetto è stato registrato correttamente. |
|
L'oggetto è già registrato. |
Commenti
La funzione CoRegisterMallocSpy registra l'oggetto IMallocSpy , usato per eseguire il debug delle chiamate ai metodi IMalloc . La funzione chiama QueryInterface sul puntatore pMallocSpy per l'interfaccia IID_IMallocSpy. Questo è per garantire che pMallocSpy punti realmente a un'implementazione di IMallocSpy. Per le regole di OLE, è previsto che una chiamata a QueryInterface abbia aggiunto un riferimento (tramite il metodo AddRef ) all'oggetto IMallocSpy . Vale a dire, CoRegisterMallocSpy non chiama direttamente AddRef su pMallocSpy, ma prevede completamente che la chiamata a QueryInterface sarà.
Quando l'oggetto IMallocSpy viene registrato, ogni volta che viene effettuata una chiamata a uno dei metodi IMalloc , OLE chiama innanzitutto il metodo di pre-metodo IMallocSpy corrispondente. Quindi, dopo aver eseguito il metodo IMalloc , OLE chiama il metodo post-metodo IMallocSpy corrispondente. Ad esempio, ogni volta che viene eseguita una chiamata a IMalloc::Alloc, da qualsiasi origine, OLE chiama IMallocSpy::P reAlloc, chiama Alloc e, al termine dell'allocazione, chiama IMallocSpy::P ostAlloc.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | objbase.h |
Libreria | Ole32.lib |
DLL | Ole32.dll |