Freigeben über


URL Monikers

Die OLE-Moniker-Architektur bietet ein bequemes Programmiermodell zum Arbeiten mit URLs. Die moniker-Architektur unterstützt erweiterbare und vollständige Namensanalyse durch die MkParseDisplayName Funktion und die IParseDisplayName und IMoniker Schnittstellen sowie druckbare Namen über die IMoniker::GetDisplayName-Methode. Die IMoniker Schnittstelle ist die Art und Weise, wie Sie urLs verwenden, die Sie treffen, und das Erstellen von Komponenten, die in die Moniker-Architektur passen, ist die Möglichkeit, URL-Namespaces tatsächlich in der Praxis zu erweitern.

Eine vom System bereitgestellte Moniker-Klasse, der URL-Moniker, stellt ein Framework zum Erstellen und Verwenden bestimmter URLs bereit. Da URLs ressourcenübergreifend in Netzwerken mit hoher Latenz häufig sehen, unterstützt der URL-Moniker asynchrone und synchrone Bindung. Der URL-Moniker unterstützt derzeit asynchronen Speichernicht.

Das folgende Diagramm zeigt die Komponenten, die an der Verwendung von URL-Monikern beteiligt sind. Alle diese Komponenten sollten vertraut sein. (Siehe asynchrone Monikers.)

Diagramm, das die Komponenten zeigt, die an der Verwendung von U R L Monikern beteiligt sind.

Wie alle Moniker-Clients erstellt und enthält ein Benutzer von URL Monikers in der Regel einen Verweis auf den Moniker sowie den Bindungskontext, der während der Bindung verwendet werden soll (IMoniker::BindToStorage oder IMoniker::BindToObject). Um asynchrone Bindung zu unterstützen, kann der Client ein Bind-Status-Callback-Objekt implementieren, das die IBindStatusCallback Schnittstelle implementiert und mit dem Bindungskontext mithilfe der RegisterBindStatusCallback--Funktion registriert. Dieses Objekt empfängt die IBinding Schnittstelle des Transports bei Aufrufen von IBindStatusCallback::OnStartBinding.

Die URL Moniker identifiziert das Protokoll, das verwendet wird, indem das URL-Präfix analysiert wird, und ruft dann die IBinding- Schnittstelle von der Transportebene ab. Der Client verwendet IBinding-, um das Anhalten, Abbrechen und Priorisieren des Bindungsvorgangs zu unterstützen. Das Rückrufobjekt empfängt auch Statusbenachrichtigungen über IBindStatusCallback::OnProgress, Datenverfügbarkeitsbenachrichtigung über IBindStatusCallback::OnDataAvailableund verschiedene, andere Transportschichtbenachrichtigungen über den Status der Bindung. Die URL-Moniker oder bestimmte Transportebenen können auch erweiterte Informationen vom Client über IBindStatusCallback::QueryInterfaceanfordern, sodass der Client protokollspezifische Informationen bereitstellen kann, die sich auf den Bindungsvorgang auswirken.

Weitere Informationen finden Sie in den folgenden Themen:

asynchrone Moniker

Über URL Monikers