URL Monikers
OLE Moniker 架構提供方便的程序設計模型,以使用URL。 Moniker 架構支援透過 MkParseDisplayName 函式和 IParseDisplayName 和 IMoniker 介面進行可延伸和完整名稱剖析,以及透過 IMoniker::GetDisplayName 方法列印的名稱。 IMoniker 介面是您實際使用 URL 的方式,而建置符合 Moniker 架構的元件,就是實際擴充 URL 命名空間的方式。
系統提供的Moniker類別URL Moniker提供建置和使用特定URL的架構。 由於 URL 經常會在高延遲網路中看到資源,因此 URL Moniker 支援異步和同步系結。 URL Moniker 目前 不支援異步記憶體。
下圖顯示使用 URL Moniker 所涉及的元件。 所有這些元件都應該很熟悉。 (請參閱 異步 Monikers.)
和所有Moniker用戶端一樣,URL Monikers的使用者通常會建立並保存Moniker的參考,以及系結期間要使用的系結內容(IMoniker::BindTo 儲存體 或 IMoniker::BindToObject)。 為了支援異步系結,用戶端可以實作 bind-status-callback 物件,此物件會實作 IBindStatusCallback 介面,並使用 RegisterBindStatusCallback 函式向系結內容註冊。 此物件會在呼叫 IBindStatusCallback::OnStartBinding 期間接收傳輸的 IBinding 介面。
URL Moniker 會藉由剖析 URL 前置詞來識別所使用的通訊協議,然後從傳輸層擷取 IBinding 介面。 用戶端會使用 IBinding 來支援系結作業的暫停、取消和優先順序。 回呼物件也會透過 IBindStatusCallback::OnProgress 接收進度通知、透過 IBindStatusCallback::OnDataAvailable 的數據可用性通知,以及其他有關係結狀態的其他傳輸層通知。 URL Moniker 或特定傳輸層也可以透過 IBindStatusCallback::QueryInterface 向用戶端要求擴充資訊,讓用戶端提供會影響系結作業的通訊協定特定資訊。
如需詳細資訊,請參閱下列主題:
相關主題