Bagikan melalui


Fungsi BindMoniker (objbase.h)

Menemukan objek dengan monikernya, mengaktifkan objek jika tidak aktif, dan mengambil penunjuk ke antarmuka yang ditentukan pada objek tersebut.

Sintaks

HRESULT BindMoniker(
  [in]  LPMONIKER pmk,
  [in]  DWORD     grfOpt,
  [in]  REFIID    iidResult,
  [out] LPVOID    *ppvResult
);

Parameter

[in] pmk

Penunjuk ke moniker objek. Lihat IMoniker.

[in] grfOpt

Parameter ini disediakan untuk penggunaan di masa mendatang dan harus 0.

[in] iidResult

Pengidentifikasi antarmuka yang akan digunakan untuk berkomunikasi dengan objek .

[out] ppvResult

Alamat variabel pointer yang menerima pointer antarmuka yang diminta di iidResult. Setelah berhasil dikembalikan, *ppvResult berisi penunjuk antarmuka yang diminta. Jika terjadi kesalahan, *ppvResult adalah NULL. Jika panggilan berhasil, pemanggil bertanggung jawab untuk merilis pointer dengan panggilan ke metode IUnknown::Release objek.

Nilai kembali

Fungsi ini dapat mengembalikan kode kesalahan berikut, atau salah satu nilai kesalahan yang dikembalikan oleh metode IMoniker::BindToObject .

Menampilkan kode Deskripsi
S_OK
Objek ditemukan dan diaktifkan, jika perlu, dan penunjuk ke antarmuka yang diminta dikembalikan.
MK_E_NOOBJECT
Objek yang diidentifikasi objek moniker tidak dapat ditemukan.

Keterangan

BindMoniker adalah fungsi pembantu yang disediakan sebagai cara mudah bagi klien yang memiliki moniker objek untuk mendapatkan penunjuk ke salah satu antarmuka objek tersebut. BindMoniker mengemas panggilan berikut:

CreateBindCtx(0, &pbc); 
pmk->BindToObject(pbc, NULL, riid, ppvObj);

CreateBindCtx membuat objek konteks ikatan yang mendukung implementasi sistem IBindContext. Parameter pmk sebenarnya adalah penunjuk ke implementasi IMoniker pada objek moniker. Metode BindToObject implementasi ini memasok pointer ke penunjuk antarmuka yang diminta.

Jika Anda memiliki beberapa moniker untuk mengikat berturut-turut cepat dan jika Anda tahu bahwa moniker tersebut akan mengaktifkan objek yang sama, mungkin lebih efisien untuk memanggil metode IMoniker::BindToObject secara langsung, yang memungkinkan Anda menggunakan objek konteks ikat yang sama untuk semua moniker. Lihat antarmuka IBindCtx untuk informasi selengkapnya.

Aplikasi kontainer yang memungkinkan dokumen mereka berisi objek tertaut adalah klien khusus yang umumnya tidak melakukan panggilan langsung ke metode IMoniker . Sebagai gantinya, klien memanipulasi objek yang ditautkan melalui antarmuka IOleLink . Handler default mengimplementasikan antarmuka ini dan memanggil metode IMoniker yang sesuai sesuai kebutuhan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows 2000 Server [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header objbase.h
Pustaka Ole32.lib
DLL Ole32.dll
Set API ext-ms-win-com-ole32-l1-1-5 (diperkenalkan dalam Windows 10, versi 10.0.15063)

Lihat juga

CreateBindCtx

IMoniker::BindToObject