CoRegisterMallocSpy 関数 (objbase.h)

IMallocSpy インターフェイスの実装を登録します。その後、対応する IMalloc メソッドの呼び出しごとにラッパー メソッドを呼び出す必要があります。

構文

HRESULT CoRegisterMallocSpy(
  [in] LPMALLOCSPY pMallocSpy
);

パラメーター

[in] pMallocSpy

IMallocSpy 実装のインスタンスへのポインター。

戻り値

この関数は、標準の戻り値E_INVALIDARGと、次の値を返すことができます。

リターン コード 説明
S_OK
オブジェクトが正常に登録されました。
CO_E_OBJISREG
オブジェクトは既に登録されています。

注釈

CoRegisterMallocSpy 関数は、IMallocSpy オブジェクトを登録します。これは、IMalloc メソッドの呼び出しをデバッグするために使用されます。 この関数は、インターフェイス IID_IMallocSpyのポインター pMallocSpyQueryInterface を呼び出します。 これは、 pMallocSpy が実際に IMallocSpy の実装を指していることを確認するため です。 OLE の規則により、 QueryInterface の呼び出しが成功すると、( AddRef メソッドを介して) IMallocSpy オブジェクトへの参照が追加されることが予想されます。 つまり、CoRegisterMallocSpypMallocSpyAddRef を直接呼び出すのではなく、QueryInterface 呼び出しが行われると完全に想定しています。

IMallocSpy オブジェクトが登録されている場合、IMalloc メソッドの 1 つを呼び出すたびに、OLE は最初に対応する IMallocSpy プリメソッドを呼び出します。 次に、 IMalloc メソッドを実行した後、OLE は対応する IMallocSpy post-method を呼び出します。 たとえば、任意のソースから IMalloc::Alloc を呼び出すたびに、OLE は IMallocSpy::P reAlloc を呼び出し、 Alloc を呼び出し、その割り当てが完了したら 、IMallocSpy::P ostAlloc を呼び出します。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー objbase.h
Library Ole32.lib
[DLL] Ole32.dll

こちらもご覧ください

CoGetMalloc

CoRevokeMallocSpy

IMallocSpy