Funzioni hook del blocco client

Le informazioni contenute in questo argomento sono valide per:

Edizione

Visual Basic

C#

F#

C++

Web Developer

Express

Argomento non applicabile Argomento non applicabile Argomento non applicabile

Solo nativo

Argomento non applicabile

Pro, Premium e Ultimate

Argomento non applicabile Argomento non applicabile Argomento non applicabile

Solo nativo

Argomento non applicabile

Se si desidera convalidare o inserire in report il contenuto dei dati memorizzati in blocchi _CLIENT_BLOCK, sarà possibile scrivere una funzione specificamente per tale scopo. Tale funzione dovrà avere un prototipo analogo al seguente, come definito in CRTDBG.H:

void YourClientDump(void *, size_t)

In altri termini, la funzione hook dovrà accettare un puntatore void all'inizio dell'argomento del blocco di allocazione, insieme a un valore di tipo size_t che indica la dimensione dell'allocazione, e restituire un valore void. Non esistono altre limitazioni al contenuto.

Dopo aver installato la funzione hook mediante _CrtSetDumpClient, essa verrà chiamata ogni volta che viene effettuato il dump di un blocco _CLIENT_BLOCK. Sarà quindi possibile utilizzare _CrtReportBlockType per ottenere informazioni sul tipo o sul sottotipo dei blocchi di cui è stato effettuato il dump.

Il puntatore alla funzione che viene passato a _CrtSetDumpClient è del tipo _CRT_DUMP_CLIENT, come definito in CRTDBG.H:

typedef void (__cdecl *_CRT_DUMP_CLIENT)
   (void *, size_t);

Vedere anche

Attività

Esempio crt_dbg2: funzioni hook di debug del runtime del linguaggio C

Riferimenti

_CrtReportBlockType

Altre risorse

Scrittura di funzioni hook di debug