MonikerRelativePathTo

最初に指定されたモニカ(または類似の構造を持つモニカ)の末尾に合成することで、2 つ目に指定されたモニカが得られるようなモニカを提供する。

MonikerRelativePathTo pmkSrc, pmkDest, ppmkRelPath, dwReserved

pmkSrc : [var] 作成する相対モニカと合成することで pmkDest が得られるモニカ上の IMoniker インターフェイスへのポインタ。このモニカは、作成する相対モニカの「ソース」を識別する。
pmkDest : [var] pmkSrc からの相対として表すモニカ上の IMoniker インターフェイスへのポインタ。このモニカは、作成する相対モニカの宛先を識別する。
ppmkRelPath : [var] 新しい相対モニカへのインターフェイスポインタを受け取る IMoniker* ポインタ変数のアドレス。成功時、関数はモニカに対して AddRef を呼び出しており、呼び出し側が Release を呼び出す責任を負う。エラー発生時、インターフェイスポインタの値は NULL となる。
dwReserved : [int] このパラメータは予約済みであり、0 以外の値を指定しなければならない。

(プラグイン / モジュール : ole32.dll)

解説

最初に指定されたモニカ(または類似の構造を持つモニカ)の末尾に合成することで、2 つ目に指定されたモニカが得られるようなモニカを提供する。

[戻り値]
この関数は標準の戻り値 E_INVALIDARG、E_OUTOFMEMORY、および E_UNEXPECTED
に加えて以下の値を返すことがある。
(以下省略)

[備考]
IMoniker::RelativePathTo
の実装では、まず相手のモニカが自分が認識して特別な方法で扱える型かどうかを確認すべきである。そうでない場合、自身を
pmkThis、相手のモニカを pmkOther として MonikerRelativePathTo
を呼び出すこと。MonikerRelativePathTo は、どちらかのモニカが汎用合成である場合も正しく処理する。
この関数は、pmkSrc と pmkDest
の両方が絶対モニカである場合にのみ呼び出すこと。ここで絶対モニカとは、ファイルモニカまたは最左成分がファイルモニカである汎用合成モニカで、かつそのファイルモニカが絶対パスを表すものをいう。相対モニカに対してこの関数を呼び出してはならない。

情報

プラグイン / モジュールole32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の ole32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_ole32_gen2.hs