IShellIcon::GetIconOf メソッド (shobjidl_core.h)

特定のフォルダー内のオブジェクトのアイコンを取得します。

構文

HRESULT GetIconOf(
  PCUITEMID_CHILD pidl,
  UINT            flags,
  int             *pIconIndex
);

パラメーター

pidl

型: LPCITEMIDLIST

フォルダーの相対位置を指定する ITEMIDLIST 構造体のアドレス。

flags

型: UINT

アイコンの表示方法を指定するフラグ。 このパラメーターには、0 または次のいずれかの値を指定できます。

GIL_FORSHELL

アイコンはシェル フォルダーに表示されます。

GIL_OPENICON

開いている状態と閉じた状態の両方のイメージが使用可能な場合、アイコンは開いている状態である必要があります。 このフラグを指定しない場合、アイコンは閉じた状態である必要があります。 通常、このフラグはフォルダー オブジェクトに使用されます。

pIconIndex

型: LPINT

システム イメージリスト内のアイコンのインデックスのアドレス。 次の標準イメージ リスト インデックスを返すことができます。

0

ドキュメント (空白ページ、関連付けられていない)

1

ドキュメント (ページ上のデータを含む)

2

アプリケーション (ファイル名拡張子は、.exe、.com、または .bat である必要があります)

3

フォルダー (プレーン)

4

フォルダー (開く)

戻り値

種類: HRESULT

lpIconIndex に正しいシステム イメージ リスト インデックスが含まれている場合はS_OK、このオブジェクトのアイコンを取得できない場合はS_FALSEを返します。

注釈

GetIconOf を使用してこのオブジェクトのアイコンを取得できない場合は、GetUIObjectOf メソッドを使用して Extract メソッドをサポートするオブジェクトを取得します。

CoInitialize が最初に呼び出されない場合、IShellIcon::GetIconOf は失敗します。

アプリケーションの呼び出しに関するメモ

返されるインデックスは、システム イメージの一覧から取得されます。

実装者への注意

使用するアイコン インデックスが一覧表示されている標準イメージの 1 つでない場合は、システム イメージ リストにイメージを追加し、 lpIconIndex パラメーターにインデックスを配置する実装者の責任です。 システム イメージ リストが大きくなりすぎないようにするには、各イメージを 1 回だけ追加する必要があります。

要件

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

こちらもご覧ください

IShellIcon