Bagikan melalui


Fungsi CoRegisterMallocSpy (objbase.h)

Mendaftarkan implementasi antarmuka IMallocSpy , setelah itu mengharuskan OLE untuk memanggil metode pembungkusnya di sekitar setiap panggilan ke metode IMalloc yang sesuai.

Sintaks

HRESULT CoRegisterMallocSpy(
  [in] LPMALLOCSPY pMallocSpy
);

Parameter

[in] pMallocSpy

Penunjuk ke instans implementasi IMallocSpy .

Nilai kembali

Fungsi ini dapat mengembalikan nilai pengembalian standar E_INVALIDARG, serta nilai berikut.

Menampilkan kode Deskripsi
S_OK
Objek berhasil didaftarkan.
CO_E_OBJISREG
Objek sudah terdaftar.

Keterangan

Fungsi CoRegisterMallocSpy mendaftarkan objek IMallocSpy , yang digunakan untuk men-debug panggilan ke metode IMalloc . Fungsi ini memanggil QueryInterface pada pMallocSpy penunjuk untuk antarmuka IID_IMallocSpy. Hal ini untuk memastikan bahwa pMallocSpy benar-benar menunjuk ke implementasi IMallocSpy. Dengan aturan OLE, diharapkan bahwa panggilan yang berhasil ke QueryInterface telah menambahkan referensi (melalui metode AddRef ) ke objek IMallocSpy . Artinya, CoRegisterMallocSpy tidak langsung memanggil AddRef di pMallocSpy, tetapi sepenuhnya mengharapkan bahwa panggilan QueryInterface akan.

Ketika objek IMallocSpy terdaftar, setiap kali ada panggilan ke salah satu metode IMalloc , OLE terlebih dahulu memanggil pra-metode IMallocSpy yang sesuai. Kemudian, setelah menjalankan metode IMalloc , OLE memanggil pasca-metode IMallocSpy yang sesuai. Misalnya, setiap kali ada panggilan ke IMalloc::Alloc, dari sumber apa pun, OLE memanggil IMallocSpy::P reAlloc, memanggil Alloc, dan setelah alokasi selesai, memanggil IMallocSpy::P ostAlloc.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header objbase.h
Pustaka Ole32.lib
DLL Ole32.dll

Lihat juga

CoGetMalloc

CoRevokeMallocSpy

IMallocSpy