Méthode IMallocSpy::P reRealloc (objidl.h)
Effectue les opérations requises avant d’appeler IMalloc::Realloc.
Syntaxe
SIZE_T PreRealloc(
[in] void *pRequest,
[in] SIZE_T cbRequest,
[out] void **ppNewRequest,
[in] BOOL fSpyed
);
Paramètres
[in] pRequest
Pointeur vers le bloc de mémoire spécifié dans l’appel à IMalloc::Realloc.
[in] cbRequest
Nombre d’octets du bloc de mémoire spécifié dans l’appel d’origine à IMalloc::Realloc.
[out] ppNewRequest
Adresse de la variable pointeur qui reçoit un pointeur vers le bloc de mémoire à réallouer. Cela peut être différent du pointeur dans pRequest si l’implémentation de PreRealloc étend ou modifie la réaffectation. Ce pointeur doit toujours être stocké par PreRealloc.
[in] fSpyed
Indique si le bloc de mémoire a été alloué pendant que cet espion était actif.
Valeur retournée
Nombre d’octets à passer à IMalloc::Realloc.
Notes
L’implémentation de PreRealloc peut étendre et/ou modifier l’allocation pour stocker des informations spécifiques au débogage avec l’allocation. Par conséquent, le paramètre ppNewRequest peut différer de pRequest, pointeur vers la requête spécifiée dans l’appel d’origine à Realloc.
PreRealloc peut forcer l’échec de l’allocation de mémoire en retournant 0, ce qui permet aux tests de s’assurer que l’application gère correctement l’échec d’allocation dans tous les cas. Dans ce cas, PostRealloc n’est pas appelé et Realloc retourne NULL. Toutefois, si Realloc rencontre une défaillance de mémoire réelle et retourne NULL, PostRealloc est appelé. Le forçage de l’échec d’allocation n’est effectif que si cbRequest n’est pas égal à 0.
Spécifications
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 | objidl.h |