Функция MonikerRelativePathTo (objbase.h)
Предоставляет моникер, который при составлении на конце первого указанного моникера (или с аналогичной структурой) возвращает второй указанный моникер.
Эта функция предназначена только для реализации IMoniker::RelativePathTo .
Синтаксис
HRESULT MonikerRelativePathTo(
[in] LPMONIKER pmkSrc,
[in] LPMONIKER pmkDest,
[out] LPMONIKER *ppmkRelPath,
[in] BOOL dwReserved
);
Параметры
[in] pmkSrc
Указатель на интерфейс IMoniker в моникере, который, если он состоит из создаваемого относительного моникера, создает pmkDest. Этот моникер определяет источник создаваемого относительного моникера.
[in] pmkDest
Указатель на интерфейс IMoniker в моникере, который будет выражен относительно pmkSrc. Этот моникер определяет назначение создаваемого относительного моникера.
[out] ppmkRelPath
Адрес переменной указателя IMoniker*, которая получает указатель интерфейса на новый относительный моникер. При успешном выполнении функция вызывает AddRef для моникера, и вызывающий объект отвечает за вызов Release. При возникновении ошибки значение указателя интерфейса равно NULL.
[in] dwReserved
Этот параметр зарезервирован и должен быть ненулевым.
Возвращаемое значение
Эта функция может возвращать стандартные возвращаемые значения E_INVALIDARG, E_OUTOFMEMORY и E_UNEXPECTED, а также следующие значения.
Код возврата | Описание |
---|---|
|
Возвращен значимый относительный путь. |
|
Единственной формой относительного пути является другой моникер. |
|
Параметр pmkSrc является относительным моникером, таким как моникер элемента, и должен быть составлен с моникером своего контейнера, прежде чем можно будет определить относительный путь. |
Комментарии
Реализация IMoniker::RelativePathTo должна сначала проверка, относится ли другой моникер к типу, который вы распознаете и обрабатываете особым образом. В противном случае следует вызвать monikerRelativePathTo, передав себя как pmkThis , а другой моникер — pmkOther. MonikerRelativePathTo правильно обрабатывает случаи, когда любой моникер является универсальным составным.
Эту функцию следует вызывать только в том случае, если pmkSrc и pmkDest являются абсолютными моникерами, где абсолютный моникер — это моникер файла или универсальный составной элемент, крайний левый компонент которого является моникером файла, а моникер файла представляет абсолютный путь. Не вызывайте эту функцию на относительные моникеры.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | objbase.h |
Библиотека | Ole32.lib |
DLL | Ole32.dll |