_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屬於型別_CRT_DUMP_CLIENT、 Crtdbg.h 中所定義:
typedef void (__cdecl *_CRT_DUMP_CLIENT)( void *, size_t );
如需如何實作的應用程式定義的傾印函式的範例,請參閱 crt_dbg2 範例: c 執行階段偵錯攔截函式。 如需詳細資訊,可用於函式的_CLIENT_BLOCK輸入記憶體區塊,請參閱用戶端區塊攔截函式。 _CrtReportBlockType 函數可以用來傳回資訊區塊型別和子型別。
需求
常式 |
所需的標頭 |
---|---|
_CrtSetDumpClient |
<crtdbg.h> |
如需相容性資訊,請參閱相容性在簡介中。
文件庫
偵錯版本的 C 執行階段程式庫只。
範例
範例中,如何使用_CrtSetDumpClient,請參閱 crt_dbg2。
.NET Framework 對等用法
不適用。 若要呼叫標準的 c 函式,使用PInvoke。 如需詳細資訊,請參閱平台叫用範例。