CoRegisterMallocSpy, fonction (objbase.h)
Inscrit une implémentation de l’interface IMallocSpy , exigeant par la suite qu’OLE appelle ses méthodes wrapper autour de chaque appel à la méthode IMalloc correspondante.
Syntaxe
HRESULT CoRegisterMallocSpy(
[in] LPMALLOCSPY pMallocSpy
);
Paramètres
[in] pMallocSpy
Pointeur vers un instance de l’implémentation IMallocSpy.
Valeur retournée
Cette fonction peut retourner la valeur de retour standard E_INVALIDARG, ainsi que les valeurs suivantes.
Code de retour | Description |
---|---|
|
L’objet a été correctement inscrit. |
|
L’objet est déjà inscrit. |
Remarques
La fonction CoRegisterMallocSpy inscrit l’objet IMallocSpy , qui est utilisé pour déboguer les appels aux méthodes IMalloc . La fonction appelle QueryInterface sur le pointeur pMallocSpy pour l’interface IID_IMallocSpy. Cela permet de s’assurer que pMallocSpy pointe vraiment vers une implémentation de IMallocSpy. Selon les règles d’OLE, on s’attend à ce qu’un appel réussi à QueryInterface ait ajouté une référence (via la méthode AddRef ) à l’objet IMallocSpy . Autrement dit, CoRegisterMallocSpy n’appelle pas directement AddRef sur pMallocSpy, mais s’attend à ce que l’appel QueryInterface le fasse.
Lorsque l’objet IMallocSpy est inscrit, chaque fois qu’il y a un appel à l’une des méthodes IMalloc , OLE appelle d’abord la pré-méthode IMallocSpy correspondante. Ensuite, après avoir exécuté la méthode IMalloc , OLE appelle la post-méthode IMallocSpy correspondante. Par exemple, chaque fois qu’il y a un appel à IMalloc ::Alloc, à partir d’une source quelconque, OLE appelle IMallocSpy ::P reAlloc, appelle Alloc et, une fois cette allocation terminée, appelle IMallocSpy ::P ostAlloc.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | objbase.h |
Bibliothèque | Ole32.lib |
DLL | Ole32.dll |