CoRegisterMallocSpy 函式 (objbase.h)
註冊 IMallocSpy 介面的實作,之後要求 OLE 在每次呼叫對應的 IMalloc 方法時呼叫其包裝函式方法。
語法
HRESULT CoRegisterMallocSpy(
[in] LPMALLOCSPY pMallocSpy
);
參數
[in] pMallocSpy
IMallocSpy 實作實例的指標。
傳回值
此函式可以傳回標準傳回值E_INVALIDARG,以及下列值。
傳回碼 | 描述 |
---|---|
|
已成功註冊物件。 |
|
對象已註冊。 |
備註
CoRegisterMallocSpy 函式會註冊 IMallocSpy 對象,用來偵錯對 IMalloc 方法的呼叫。 函式會在介面的 pMallocSpy 指標上呼叫 QueryInterface IID_IMallocSpy。 這是為了確保 pMallocSpy 確實指向 IMallocSpy 的實作。 根據 OLE 的規則,預期 成功呼叫 QueryInterface 已透過 AddRef 方法將參考 (新增至 IMallocSpy 物件) 。 也就是說,CoRegisterMallocSpy 不會直接在 pMallocSpy 上呼叫 AddRef,但完全預期 QueryInterface 呼叫將會。
註冊 IMallocSpy 物件時,每當其中一個 IMalloc 方法呼叫時,OLE 會先呼叫對應的 IMallocSpy pre-method。 然後,在執行 IMalloc 方法之後,OLE 會呼叫對應的 IMallocSpy post-method。 例如,每當從任何來源呼叫 IMalloc::Alloc 時,OLE 會呼叫 IMallocSpy::P reAlloc、呼叫 Alloc,然後在該配置完成之後呼叫 IMallocSpy::P ostAlloc。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | objbase.h |
程式庫 | Ole32.lib |
Dll | Ole32.dll |