Freigeben über


MonikerRelativePathTo-Funktion (objbase.h)

Stellt einen Moniker bereit, der, wenn er am Ende des ersten angegebenen Monikers (oder eines mit einer ähnlichen Struktur) zusammengesetzt wird, den zweiten angegebenen Moniker ergibt.

Diese Funktion ist nur für die Verwendung von IMoniker::RelativePathTo-Implementierungen vorgesehen.

Syntax

HRESULT MonikerRelativePathTo(
  [in]  LPMONIKER pmkSrc,
  [in]  LPMONIKER pmkDest,
  [out] LPMONIKER *ppmkRelPath,
  [in]  BOOL      dwReserved
);

Parameter

[in] pmkSrc

Ein Zeiger auf die IMoniker-Schnittstelle auf dem Moniker, der beim Komponieren mit dem zu erstellenden relativen Moniker pmkDest erzeugt. Dieser Moniker identifiziert die "Quelle" des zu erstellenden relativen Monikers.

[in] pmkDest

Ein Zeiger auf die IMoniker-Schnittstelle auf dem Moniker, der relativ zu pmkSrc ausgedrückt werden soll. Dieser Moniker identifiziert das Ziel des zu erstellenden relativen Monikers.

[out] ppmkRelPath

Die Adresse einer IMoniker*-Zeigervariable, die den Schnittstellenzeiger auf den neuen relativen Moniker empfängt. Bei erfolgreicher Ausführung hat die Funktion AddRef für den Moniker aufgerufen, und der Aufrufer ist für den Aufruf von Release verantwortlich. Wenn ein Fehler auftritt, ist der Schnittstellenzeigerwert NULL.

[in] dwReserved

Dieser Parameter ist reserviert und muss ungleich null sein.

Rückgabewert

Diese Funktion kann die Standardrückgabewerte E_INVALIDARG, E_OUTOFMEMORY und E_UNEXPECTED sowie die folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Ein aussagekräftiger relativer Pfad wurde zurückgegeben.
MK_S_HIM
Die einzige Form des relativen Pfads ist der andere Moniker.
MK_E_NOTBINDABLE
Der Parameter pmkSrc ist ein relativer Moniker, z. B. ein Elementmoniker, und muss mit dem Moniker seines Containers zusammengesetzt werden, bevor ein relativer Pfad bestimmt werden kann.

Hinweise

Ihre Implementierung von IMoniker::RelativePathTo sollte zuerst überprüfen, ob der andere Moniker von einem Typ ist, den Sie auf besondere Weise erkennen und behandeln. Wenn nicht, sollten Sie MonikerRelativePathTo aufrufen und sich als pmkThis und den anderen Moniker als pmkOther übergeben. MonikerRelativePathTo behandelt die Fälle ordnungsgemäß, in denen ein Moniker ein generischer Zusammengesetzter ist.

Sie sollten diese Funktion nur aufrufen, wenn pmkSrc und pmkDest beide absolute Moniker sind, wobei ein absoluter Moniker entweder ein Dateimoniker oder ein generischer Zusammengesetzter ist, dessen linke Komponente ein Dateimoniker ist, und der Dateimoniker einen absoluten Pfad darstellt. Rufen Sie diese Funktion nicht für relative Moniker auf.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile objbase.h
Bibliothek Ole32.lib
DLL Ole32.dll

Weitere Informationen

IMoniker::RelativePathTo