Udostępnij przez


URL Monikers

Architektura moniker OLE zapewnia wygodny model programowania do pracy z adresami URL. Architektura moniker obsługuje rozszerzalną i pełną analizowanie nazw za pośrednictwem funkcji MkParseDisplayName oraz IParseDisplayName i interfejsów IMoniker, a także nazwy drukowalne za pośrednictwem metody IMoniker::GetDisplayName. Interfejs IMoniker jest sposobem rzeczywistego używania napotkanych adresów URL, a tworzenie składników pasujących do architektury moniker jest sposobem rzeczywistego rozszerzania przestrzeni nazw adresów URL w praktyce.

Klasa moniker dostarczana przez system, moniker adresu URL, udostępnia platformę do kompilowania i używania określonych adresów URL. Ponieważ adresy URL często widzą zasoby w sieciach o dużym opóźnieniu, moniker adresu URL obsługuje asynchroniczne, a także synchroniczne powiązanie. Moniker adresu URL nie obsługuje obecnie asynchronicznego magazynu.

Na poniższym diagramie przedstawiono składniki związane z używaniem elementów monikers adresów URL. Wszystkie te składniki powinny być znane. (Zobacz Asynchronous Monikers.)

Diagram przedstawiający składniki związane z używaniem monikerów języka U R L.

Podobnie jak wszyscy klienci moniker, użytkownik adresu URL Monikers zwykle tworzy i przechowuje odwołanie do pseudonimu, a także kontekst powiązania, który ma być używany podczas tworzenia powiązania (IMoniker::BindToStorage lub IMoniker::BindToObject). Aby obsługiwać powiązanie asynchroniczne, klient może zaimplementować obiekt bind-status-callback, który implementuje interfejs IBindStatusCallback i zarejestrować go w kontekście powiązania przy użyciu funkcji RegisterBindStatusCall back. Ten obiekt otrzyma interfejs IBinding transportu podczas wywołań IBindStatusCallback::OnStartBinding.

Adres URL Moniker identyfikuje protokół używany przez analizowanie prefiksu adresu URL, a następnie pobiera interfejs IBinding z warstwy transportu. Klient używa IBinding do obsługi wstrzymywania, anulowania i priorytetyzacji operacji powiązania. Obiekt wywołania zwrotnego otrzymuje również powiadomienie o postępie za pośrednictwem IBindStatusCallback::OnProgress, powiadomienia o dostępności danych za pośrednictwem IBindStatusCallback::OnDataAvailablei różne inne powiadomienia warstwy transportu dotyczące stanu powiązania. Moniker adresu URL lub określone warstwy transportu mogą również żądać rozszerzonych informacji od klienta za pośrednictwem IBindStatusCallback::QueryInterface, co umożliwia klientowi podanie informacji specyficznych dla protokołu, które będą mieć wpływ na operację powiązania.

Aby uzyskać więcej informacji, zobacz następujące tematy:

Asynchronous Monikers

o adresie URL Monikers