SHGetIconOverlayIndexW 関数 (shlobj_core.h)

システム イメージの一覧のオーバーレイ アイコンのインデックスを返します。

構文

int SHGetIconOverlayIndexW(
  [in, optional] LPCWSTR pszIconPath,
                 int     iIconIndex
);

パラメーター

[in, optional] pszIconPath

種類: LPCTSTR

アイコンを含むファイルの完全修飾パスを含む最大長 MAX_PATH の null で終わる文字列へのポインター。

iIconIndex

型: int

pszIconPath が指すファイル内のアイコンのインデックス。 標準のオーバーレイ アイコンを要求するには、 pszIconPathNULL に設定し、 iIconIndex を次のいずれかに設定します。

IDO_SHGIOI_SHARE (0x0FFFFFFF)

共有フォルダーを示すオーバーレイ アイコン。

リンクされたフォルダーまたはファイルを示すオーバーレイ アイコン。

IDO_SHGIOI_SLOWFILE (0x0FFFFFFD)

低速なファイルを示すオーバーレイ アイコン。

IDO_SHGIOI_DEFAULT (0x0FFFFFFC)

Windows 7 以降。 アイテムがセット内の既定値であることを示すオーバーレイ アイコン。 1 つの例として、既定のプリンターがあります。

戻り値

型: int

成功した場合はシステム イメージ リストのオーバーレイ アイコンのインデックスを返し、それ以外の場合は -1 を返します。

注釈

アイコン オーバーレイは、システム イメージの一覧の一部です。 これらは 2 つの識別子を持っています。 1 つ目は、1 から始まるオーバーレイ インデックスで、イメージ リスト内の他のオーバーレイに対する相対的なオーバーレイを識別します。 もう 1 つは、実際のイメージを識別するイメージ インデックスです。 これら 2 つのインデックスは、ImageList_SetOverlayImageを使用してプライベート イメージ リストにアイコン オーバーレイを追加するときに、 それぞれ iOverlay パラメーターと iImage パラメーターに割り当てる 値と同じです。 SHGetIconOverlayIndex は オーバーレイ インデックスを返します。 オーバーレイ インデックスを同等のイメージ インデックスに変換するには、 INDEXTOOVERLAYMASK を呼び出します。

メモ 初期化中にイメージがシステム イメージ リストに読み込まれた後は、変更できません。 pszIconPathiIconIndex で指定されたファイル名とインデックスは、アイコン オーバーレイを識別するためにのみ使用されます。 SHGetIconOverlayIndex を使用してシステム イメージの一覧を変更することはできません。
 

注意

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

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shlobj_core.h (Shlobj.h、Shlobj_core.h を含む)
Library Shell32.lib
[DLL] Shell32.dll (バージョン 5.0 以降)

こちらもご覧ください

IShellIconOverlay

IShellIconOverlayIdentifier