SHDefExtractIconW 関数 (shlobj_core.h)

ファイルからアイコンを抽出する既定のハンドラーを提供します。

構文

SHSTDAPI SHDefExtractIconW(
  [in]            LPCWSTR pszIconFile,
                  int     iIndex,
  [in]            UINT    uFlags,
  [out, optional] HICON   *phiconLarge,
  [out, optional] HICON   *phiconSmall,
                  UINT    nIconSize
);

パラメーター

[in] pszIconFile

種類: LPCTSTR

アイコンの抽出元のファイルのパスと名前を含む null で終わるバッファーへのポインター。

iIndex

型: int

pszIconFile 内のという名前のファイル内のアイコンの場所。 正の数の場合は、ファイル内のアイコンの 0 から始まる位置を参照します。 たとえば、0 はリソース ファイルの 1 番目のアイコンを参照し、2 は 3 番目のアイコンを参照します。 負の数の場合は、アイコンのリソース ID を参照します。

[in] uFlags

型: UINT

アイコンの抽出を制御するフラグ。

GIL_SIMULATEDOC

抽出したアイコンを既定のドキュメント アイコンに重ねて、最終的なアイコンを作成します。 このアイコンは、これ以上適切なアイコンが見つからない場合や取得できない場合に使用できます。

[out, optional] phiconLarge

種類: HICON*

この関数が正常に返されるときに、nIconSizeLOWORD で指定されたアイコンの大きなバージョンのハンドルを受け取る HICON へのポインター。 この値には NULL を指定できます。

[out, optional] phiconSmall

種類: HICON*

この関数が正常に返されるときに、nIconSize の HIWORD で指定されたアイコンの小さなバージョンのハンドルを受け取る HICON へのポインター。

nIconSize

型: UINT

LOWORD の大きなアイコン サイズとその HIWORD の小さなアイコン サイズを含む 値。 サイズはピクセル単位で測定されます。 既定の大小のサイズを指定するには、0 を渡します。

戻り値

型: HRESULT

この関数は、これらの値のいずれかを返すことができます。

リターン コード 説明
S_OK
成功しました。
S_FALSE
要求されたアイコンが存在しません。
E_FAIL
ファイルにアクセスできないか、低速リンクを介してアクセスされています。

注釈

呼び出し元は、不要になったときにこの関数を使用して作成されたアイコン リソースを解放する必要があります。 これは DestroyIcon 関数を使用して行うことができます。

注意

shlobj_core.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SHDefExtractIcon を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー shlobj_core.h (Shlobj.h、Shlobj_core.h を含む)
Library Shell32.lib
[DLL] Shell32.dll (バージョン 6.0 以降)
API セット ext-ms-win-shell-shell32-l1-2-1 (Windows 10 バージョン 10.0.10240 で導入)