_CrtSetDumpClient
安裝應用程式定義的函式以傾印 _CLIENT_BLOCK 型別記憶體區塊 (僅偵錯版本)。
_CRT_DUMP_CLIENT _CrtSetDumpClient(
_CRT_DUMP_CLIENT dumpClient
);
參數
- dumpClient
加入用戶端定義記憶體傾印功能到攔截執行階段 C 偵錯記憶體傾印處理序。
傳回值
傳回先前定義的用戶端區塊傾印函式。
備註
_CrtSetDumpClient 函式可讓應用程式將它的函式攔截到存於 _CLIENT_BLOCK 記憶體區塊的傾印物件至執行階段 C 偵錯記憶體傾印程序。 因此,每次一個偵錯傾印函式,例如 _CrtMemDumpAllObjectsSince 或 _CrtDumpMemoryLeaks 傾印 _CLIENT_BLOCK 記憶體區塊,應用程式的傾印函式同樣如此呼叫。 _CrtSetDumpClient 提供應用程式以簡單方法偵測記憶體遺漏和驗證或報告在 _CLIENT_BLOCK 區塊存放的資料內容。 如果未定義 _DEBUG,在前置處理中,對 _CrtSetDumpClient 的呼叫將被移除。
_CrtSetDumpClient 函式安裝在 dumpClient 所指定的新應用程式端定義的傾印功能並傳回先前定義的傾印函式。 用戶端區塊傾印函式的範例如下:
void DumpClientFunction( void *userPortion, size_t blockSize );
userPortion 引數是指向使用者記憶體區塊的資料區段的開頭,而 blockSize 以位元組指定配置的記憶體區塊的大小。 用戶端區塊傾印函式必須傳回 void。 傳入 _CrtSetDumpClient 的指向客戶端傾印函數的指標是定義在 Crtdbg.h 裡的 _CRT_DUMP_CLIENT 類型:
typedef void (__cdecl *_CRT_DUMP_CLIENT)( void *, size_t );
如需在 _CLIENT_BLOCK 型別的記憶體區塊上執行的函式的詳細資訊,請參閱 用戶端區塊攔截函式。 _CrtReportBlockType 函式可用來傳回有關區塊類型及子類型的資訊。
需求
常式 |
必要的標頭 |
---|---|
_CrtSetDumpClient |
<crtdbg.h> |
如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility) 。
程式庫
C run-time libraries 版本的偵錯
.NET Framework 對等用法
不適用。若要呼叫標準 C 函式,請使用 PInvoke。如需詳細資訊,請參閱平台叫用範例。