ファイル内にリソースとして格納されたアイコン、またはファイルに関連付けられた実行ファイル内に格納されたアイコンへのハンドルを取得する。(Unicode)
ExtractAssociatedIconW hInst, pszIconPath, piIcon
hInst : [intptr] 型: HINSTANCE 呼び出し側アプリケーションのインスタンスへのハンドル。 pszIconPath : [wstr] 型: LPTSTR 文字列へのポインタ。入力時にはアイコンを含むファイルの完全なパスとファイル名を指定する。関数はそのファイル、またはそのファイルに関連付けられた実行ファイルからアイコンハンドルを抽出する。 piIcon : [var] 型: LPWORD WORD 値へのポインタ。入力時にはハンドルを取得するアイコンのインデックスを指定する。
(プラグイン / モジュール : shell32.dll)
ファイル内にリソースとして格納されたアイコン、またはファイルに関連付けられた実行ファイル内に格納されたアイコンへのハンドルを取得する。(Unicode) [戻り値] 型: HICON 関数が成功した場合、戻り値はアイコンハンドルである。アイコンが関連付けられた実行ファイルから抽出された場合、関数は実行ファイルの完全なパスとファイル名を lpIconPath が指す文字列に格納し、アイコン識別子を lpiIcon が指す WORD に格納する。 関数が失敗した場合、戻り値は NULL である。 [備考] ExtractAssociatedIcon が返したアイコンハンドルは、不要になった時点で呼び出し側が DestroyIcon 関数を呼び出して解放する責任がある。ExtractAssociatedIcon 関数はまず lpIconPath で指定されたファイル内でインデックス指定されたアイコンを探す。そのファイルからアイコンハンドルを取得できず、かつそのファイルに関連付けられた実行ファイルがある場合、その実行ファイル内でアイコンを探す。実行ファイルとの関連付けはファイル名の拡張子に基づいており、レジストリのユーザ単位部分に格納されている。 > [!NOTE] > shellapi.h ヘッダは UNICODE プリプロセッサ定数の定義に基づいてこの関数の ANSI 版または Unicode 版を自動的に選択するエイリアスとして ExtractAssociatedIcon を定義している。エンコーディング非依存のエイリアスとエンコーディング依存のコードを混在させるとミスマッチが生じ、コンパイルエラーや実行時エラーを引き起こす可能性がある。詳細は [Conventions for Function Prototypes](/windows/win32/intl/conventions-for-function-prototypes) を参照。
| プラグイン / モジュール | 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 |