ホストされたシェル拡張やその他のコンポーネントが、それらのホストプロセスの早期終了を防ぐためのインターフェイスを提供する。
SHSetInstanceExplorer punk
punk : [var] 型: IUnknown* フリースレッドの IUnknown へのポインター。コンポーネントは (SHGetInstanceExplorer を介して) このインターフェイスを使ってホストプロセスの終了を防ぐことができる。この値は NULL でもよく、その場合、プロセス参照はコンポーネントから利用できなくなる。
(プラグイン / モジュール : shell32.dll)
ホストされたシェル拡張やその他のコンポーネントが、それらのホストプロセスの早期終了を防ぐためのインターフェイスを提供する。 [備考] Windows Explorer と Internet Explorer は、シェル拡張などのコンポーネントがプロセスの存続期間を延長できるようにするために SHSetInstanceExplorer を使用できる。他のアプリケーションも同じ機能を提供するために SHSetInstanceExplorer を使用できる。たとえば、ブラウザのメッセージループとプロキシデスクトップは、他のスレッドが自分たちの存続期間を延長できるようにするために SHSetInstanceExplorer を使用する。Windows Explorer と Internet Explorer 以外のアプリケーションがこの関数を呼び出すと、互換性の問題に遭遇する可能性がある。なぜなら、いくつかのコンポーネントは Windows Explorer や Internet Explorer 内でホストされているかどうかを検出するために SHGetInstanceExplorer を使用するからである。SHSetInstanceExplorer に渡されるインターフェイスポインターはフリースレッドオブジェクトを参照していなければならない。コンポーネントが SHGetInstanceExplorer を呼び出すたびに、システムはインターフェイスポインターを呼び出し側コンポーネントに返す前に AddRef メソッドを呼び出す。コンポーネントは処理が完了したときに IUnknown::Release メソッドを呼び出す。SHSetInstanceExplorer を呼び出したプロセスは、提供されたインターフェイスポインターの参照カウントが非ゼロの間は終了してはならない。コンポーネントがプロセス参照をどのように使用するかの詳細は、SHGetInstanceExplorer を参照。
| プラグイン / モジュール | shell32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の shell32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_shell32_gen2.hs |