このモニカーの逆となるモニカーを作成する。このモニカーまたは類似構造のモニカーの右側に合成すると、モニカーは何もない状態に合成される。
IMoniker_Inverse this, ppmk
this : [comobj] IMoniker インターフェースの COM オブジェクト変数 ppmk : [comobj] このモニカーの逆となるモニカーへのインターフェースポインタを受け取る IMoniker ポインタ変数のアドレス。成功時、実装は新しい逆モニカーに対して AddRef を呼び出さなければならない。呼び出し側は Release を呼び出す責任がある。エラーが発生した場合、実装は *ppmk を NULL に設定すべきである。
(プラグイン / モジュール : com_misc.dll)
このモニカーの逆となるモニカーを作成する。このモニカーまたは類似構造のモニカーの右側に合成すると、モニカーは何もない状態に合成される。 [戻り値] このメソッドは、標準の戻り値 E_OUTOFMEMORY のほか、以下の値を返す場合がある。 (以下省略) [備考] モニカーの逆は、MS-DOS ファイルシステムの ".." ディレクトリに類似している。".." ディレクトリは他の任意のディレクトリ名の逆として機能する。ディレクトリ名に ".." を追加すると空のパスになるからである。同様に、モニカーの逆は通常は同じクラスのすべてのモニカーの逆でもある。ただし、異なるクラスのモニカーの逆であるとは限らない。複合モニカーの逆は、元のモニカーのコンポーネントの逆を逆順に並べた複合である。例えば、A の逆を Inv( A )、A、B、C の複合を Comp( A, B, C ) とすると、Inv( Comp( A, B, C ) ) は Comp( Inv( C ), Inv( B ), Inv( A ) ) と等しい。すべてのモニカーに逆があるわけではない。アンチモニカーなど、それ自体が逆であるモニカーの多くは逆を持たない。逆を持たないモニカーでは、それが識別するオブジェクトの内側から外側の他のオブジェクトへの相対モニカーを形成できない。呼び出し側への注意: モニカーを使用して別のオブジェクトを特定しているオブジェクトは、通常、自身が使用しているモニカーのクラスを知らない。モニカーの逆を取得するには、使用中のモニカーがアンチモニカーを自身の逆と見なしているかどうか確信が持てないため、CreateAntiMoniker 関数ではなく常に IMoniker::Inverse を呼び出すべきである。 Inverse メソッドは、相対モニカーの構築を助けるため、IMoniker::RelativePathTo メソッドの実装からも呼び出される。実装者への注意: モニカーに内部構造がない場合、IMoniker::Inverse の実装内でアンチモニカーを取得するために CreateAntiMoniker 関数を呼び出すことができる。IMoniker::ComposeWith の実装では、Inverse の実装で提供した逆をチェックする必要がある。実装固有の注意: (以下省略)
| プラグイン / モジュール | com_misc.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の com_misc.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_com_misc_gen2.hs |