IMallocSpy::P reRealloc-Methode (objidl.h)
Führt Vorgänge aus, die vor dem Aufruf von IMalloc::Realloc erforderlich sind.
Syntax
SIZE_T PreRealloc(
[in] void *pRequest,
[in] SIZE_T cbRequest,
[out] void **ppNewRequest,
[in] BOOL fSpyed
);
Parameter
[in] pRequest
Der Zeiger auf den Speicherblock, der im Aufruf von IMalloc::Realloc angegeben ist.
[in] cbRequest
Die Byteanzahl des Speicherblocks, wie im ursprünglichen Aufruf von IMalloc::Realloc angegeben.
[out] ppNewRequest
Adresse der Zeigervariable, die einen Zeiger auf den Speicherblock empfängt, der neu zugeordnet werden soll. Dies kann sich vom Zeiger in pRequest unterscheiden, wenn die Implementierung von PreRealloc die Neuzuordnung erweitert oder ändert. Dieser Zeiger sollte immer von PreRealloc gespeichert werden.
[in] fSpyed
Gibt an, ob der Speicherblock zugeordnet wurde, während dieser Spion aktiv war.
Rückgabewert
Die Byteanzahl, die an IMalloc::Realloc übergeben werden soll.
Hinweise
Die PreRealloc-Implementierung kann die Zuordnung erweitern und/oder ändern, um debugspezifische Informationen mit der Zuordnung zu speichern. Daher kann sich der ppNewRequest-Parameter von pRequest unterscheiden, einem Zeiger auf die Anforderung, die im ursprünglichen Aufruf von Realloc angegeben wurde.
PreRealloc kann einen Speicherbelegungsfehler erzwingen, indem 0 zurückgegeben wird, sodass Tests sicherstellen können, dass die Anwendung Zuordnungsfehler in allen Fällen ordnungsgemäß behandelt. In diesem Fall wird PostRealloc nicht aufgerufen, und Realloc gibt NULL zurück. Wenn Realloc jedoch auf einen echten Speicherfehler stößt und NULL zurückgibt, wird PostRealloc aufgerufen. Das Erzwingen eines Zuordnungsfehlers ist nur wirksam, wenn cbRequest nicht gleich 0 ist.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | objidl.h |