IOleClientSite::Metode GetMoniker (oleidl.h)

Mengambil moniker untuk situs klien objek. Objek dapat memaksa penugasan sendiri atau moniker kontainernya dengan menentukan nilai untuk dwAssign.

Sintaks

HRESULT GetMoniker(
  [in]  DWORD    dwAssign,
  [in]  DWORD    dwWhichMoniker,
  [out] IMoniker **ppmk
);

Parameter

[in] dwAssign

Menentukan apakah akan mendapatkan moniker hanya jika sudah ada, memaksa penugasan moniker, membuat moniker sementara, atau menghapus moniker yang telah ditetapkan. Dalam praktiknya, Anda biasanya akan meminta agar penugasan paksa kontainer dari moniker. Nilai yang mungkin diambil dari enumerasi OLEGETMONIKER .

[in] dwWhichMoniker

Menentukan apakah akan mengembalikan moniker kontainer, moniker objek relatif terhadap kontainer, atau moniker penuh objek. Dalam praktiknya, Anda biasanya akan meminta moniker penuh objek. Nilai yang mungkin diambil dari enumerasi OLEWHICHMK .

[out] ppmk

Penunjuk ke variabel pointer IMoniker yang menerima penunjuk antarmuka ke moniker untuk situs klien objek. Jika terjadi kesalahan, implementasi harus mengatur ppmk ke NULL. Setiap kali kontainer menerima panggilan ke IOleClientSite::GetMoniker, kontainer harus meningkatkan jumlah referensi pada pointer ppmk yang dikembalikannya. Pemanggil bertanggung jawab untuk memanggil Rilis setelah selesai dengan pointer.

Nilai kembali

Metode ini mengembalikan S_OK pada keberhasilan. Nilai pengembalian lain yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
E_NOTIMPL
Kontainer ini tidak dapat menetapkan moniker ke objek. Ini adalah kasus dengan kontainer OLE 1.

Keterangan

Kontainer mengimplementasikan GetMoniker sebagai cara mengeluarkan moniker untuk objek yang disematkan kepada klien yang perlu ditautkan ke objek tersebut.

Saat tautan dibuat ke objek yang disematkan atau ke objek pseudo di dalamnya (rentang sel dalam spreadsheet, misalnya), objek memerlukan moniker untuk membangun moniker komposit yang menunjukkan sumber tautan. Jika objek yang disematkan belum memiliki moniker, objek tersebut dapat memanggil GetMoniker untuk memintanya.

Setiap kontainer yang mengharapkan untuk berisi tautan ke penyematan harus mendukung GetMoniker untuk memberikan OLEWHICHMK_CONTAINER, sehingga memungkinkan pelacakan tautan ketika klien tautan dan menautkan file sumber bergerak, tetapi mempertahankan posisi relatif yang sama.

Objek tidak boleh menyimpan moniker penuh atau moniker kontainernya secara terus-menerus, karena ini dapat berubah saat objek tidak dimuat. Misalnya, kontainer atau objek dapat diganti namanya, di mana peristiwa, menyimpan moniker kontainer atau moniker penuh objek akan membuat klien tidak mungkin untuk melacak tautan ke objek.

Dalam beberapa kasus yang sangat khusus, objek mungkin tidak lagi memerlukan moniker yang sebelumnya ditetapkan untuknya dan mungkin ingin menghapusnya sebagai pengoptimalan. Dalam kasus seperti itu, objek dapat memanggil GetMoniker dengan OLEGETMONIKER_UNASSIGN agar moniker dihapus.

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 oleidl.h

Lihat juga

IOleClientSite

IOleClientSite::GetMoniker

IOleObject::SetMoniker