Bagikan melalui


Monikers Asinkron dan Sinkron

Klien moniker OLE standar dan sinkron biasanya membuat dan menyimpan referensi ke moniker, serta konteks pengikatan yang akan digunakan selama pengikatan. Komponen yang terlibat dalam menggunakan moniker tradisional ditampilkan dalam diagram berikut.

Diagram that shows the Client connected to either Bind Context or Any Moniker for the System-Provided.

Klien biasanya membuat moniker standar dengan memanggil fungsi seperti CreateFileMoniker, CreateItemMoniker, atau CreatePointerMoniker atau, karena dapat disimpan ke penyimpanan persisten, melalui OleSaveToStream dan OleLoadFromStream. Monikers juga dapat diperoleh dari objek kontainer dengan memanggil metode IBindHost::CreateMoniker. Klien membuat konteks pengikatan dengan memanggil fungsi CreateBindCtx lalu meneruskan konteks pengikatan ke moniker dengan panggilan ke IMoniker::BindToStorage atau IMoniker::BindToObject.

Seperti yang ditunjukkan dalam diagram berikut, klien moniker asinkron juga membuat dan menyimpan referensi ke moniker dan konteks ikat yang akan digunakan selama pengikatan.

Diagram that shows the connections between Client-Provided, Monker-Provided, and System-Provided.

Untuk mendapatkan perilaku asinkron, klien mengimplementasikan antarmuka IBindStatusCallback pada objek bind-status-callback dan memanggil fungsi RegisterBindStatusCallback atau fungsi CreateAsyncBindCtx untuk mendaftarkan antarmuka ini dengan konteks pengikatan. Moniker meneruskan penunjuk ke antarmuka IBinding-nya dalam panggilan ke metode IBindStatusCallback::OnStartBinding. Klien memberi tahu moniker asinkron bagaimana ia ingin mengikat pengembalian dari panggilan moniker ke metode IBindStatusCallback::GetBindInfo.

Monikers Asinkron