_CrtSetDumpClient
Installiert eine von der Anwendung definierte Funktion, um _CLIENT_BLOCK-Typ speicherblöcke (nur Debugversion) zu speichern.
_CRT_DUMP_CLIENT _CrtSetDumpClient(
_CRT_DUMP_CLIENT dumpClient
);
Parameter
- dumpClient
Neue clientdefinierte Speicherabbild für Reservierungen, auf den ein Hook den Prozess der C-Laufzeit - Debuggen Speicherabbild.
Rückgabewert
Gibt die zuvor definierte Funktion blocks-Dump Client zurück.
Hinweise
Die _CrtSetDumpClient-Funktion kann die Anwendung den Hook eigene Funktion auf Dump Objekte, die in _CLIENT_BLOCK Speicherblöcke in den Prozess der C-Laufzeit - Debuggen Speicherabbild gespeichert werden.Daher wird bei jedem Dump eine Funktion wie _CrtMemDumpAllObjectsSince oder _CrtDumpMemoryLeaks_CLIENT_BLOCK einen Speicherblock, die das Feature für Dumps der Anwendung auch aufgerufen wird._CrtSetDumpClient stellt eine Anwendung mit einer einfachen Methode für Speicherverluste und überprüfen oder melden den Inhalt von Daten erkennen, die in _CLIENT_BLOCK Blöcken gespeichert werden.Wenn _DEBUG nicht definiert wird, werden Aufrufe _CrtSetDumpClient während des Präprozessorlaufs entfernt.
Die _CrtSetDumpClient Dumps anwendungsdefinierte die neue Funktion installiert, die in dumpClient angegeben wird, und gibt die zuvor definierte Dumps für Reservierungen zurück.Ein Beispiel für eine blocks-Dump Client Funktion lautet wie folgt:
void DumpClientFunction( void *userPortion, size_t blockSize );
Das userPortion-Argument ist ein Zeiger auf den Anfang des Benutzers bezugspunkt Teils des Speicherblocks und blockSize gibt die Größe des belegten Speicherblocks in Bytes an.Die Funktion muss voidblocks-Dump Client zurückgeben.Der Zeiger auf die Funktion dump Client, die zu _CrtSetDumpClient übergeben wird, ist vom Typ _CRT_DUMP_CLIENT, wie in Crtdbg.h definiert:
typedef void (__cdecl *_CRT_DUMP_CLIENT)( void *, size_t );
Ein Beispiel dafür, wie eine von der Anwendung definierte Dumps für Reservierungen finden Sie unter crt dbg2-Beispiel: Hookfunktionen für die C-Laufzeit - Debuggenimplementiert.Weitere Informationen zu Funktionen, die auf _CLIENT_BLOCK-Typ speicherblöcke ausgeführt werden, finden Sie unter Client-Blocks-Hookfunktionen.Die _CrtReportBlockType-Funktion kann, um Informationen über Typen und Untertypen - Blocks verwendet werden.
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_CrtSetDumpClient |
<crtdbg.h> |
Weitere Informationen finden Sie unter Kompatibilität Kompatibilität in der Einführung.
Bibliotheken
Debugversionen von nur C .
Beispiel
Ein Beispiel dafür, wie _CrtSetDumpClientfinden Sie unter crt_dbg2verwendet.
.NET Framework-Entsprechung
Nicht zutreffend. Um die Standard-C-Funktion aufzurufen, verwenden Sie PInvoke. Weitere Informationen finden Sie unter Plattformaufruf-Beispiele.