このモニカーが識別するオブジェクトが現在ロードされ実行中かどうかを判定する。
IMoniker_IsRunning this, pbc, pmkToLeft, pmkNewlyRunning
this : [comobj] IMoniker インターフェースの COM オブジェクト変数 pbc : [comobj] このバインド操作で使用するバインドコンテキストの IBindCtx インターフェースへのポインタ。バインドコンテキストは、バインド処理中にバインドされたオブジェクトをキャッシュし、バインドコンテキストを使用するすべての操作に適用されるパラメータを含み、モニカー実装がその環境について情報を取得するための手段を提供する。 pmkToLeft : [comobj] このモニカーが複合の一部である場合、このモニカーの左側にあるモニカーの IMoniker インターフェースへのポインタ。このパラメータは主にモニカー実装者が複合モニカーの各構成要素間の連携を可能にするために使用する。モニカークライアントは通常 NULL を渡せばよい。 pmkNewlyRunning : [comobj] 実行中オブジェクトテーブル (ROT) に最後に追加されたモニカーの IMoniker インターフェースへのポインタ。NULL でもよい。非 NULL の場合、実装は pmkNewlyRunning に対して現在のモニカーを渡して IMoniker::IsEqual を呼び出した結果を返すことができる。このパラメータは、単に ROT を検索するよりも効率的な IsRunning の実装を可能にするために用意されているが、実装は害なく pmkNewlyRunning を無視することを選べる。
(プラグイン / モジュール : com_misc.dll)
このモニカーが識別するオブジェクトが現在ロードされ実行中かどうかを判定する。 [戻り値] このメソッドは、標準の戻り値 E_UNEXPECTED のほか、以下の値を返す場合がある。 (以下省略) [備考] 呼び出し側への注意: モニカーが識別するオブジェクトからサービスを要求する際に速度が重要な場合、オブジェクトが既に実行中である場合にのみそれらのサービスを必要とすることがある (オブジェクトを実行状態にロードすることは時間がかかる可能性があるため)。このような状況では、IsRunning を呼び出してオブジェクトが実行中かどうかを判定すべきである。リンクオブジェクト内に保存されたモニカーの場合、IsRunning は主に既定ハンドラの IOleLink::BindIfRunning の実装から呼び出される。実装者への注意: ROT へのポインタを取得するには、実装は pbc パラメータに対して IBindCtx::GetRunningObjectTable を呼び出すべきである。その後、IRunningObjectTable::IsRunning を呼び出して、モニカーが識別するオブジェクトが実行中かどうかを判定できる。モニカーが識別するオブジェクトは、実行開始時に ROT に自身を登録している必要がある。実装固有の注意: (以下省略)
| プラグイン / モジュール | 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 |