次の方法で共有


PrivateExtractIconsA 関数 (winuser.h)

[この関数は、一般的な使用を目的としたものではありません。 それ以降のバージョンの Windows では、変更または使用できない場合があります。

指定したファイルから抽出されたアイコンへのハンドルの配列を作成します。

構文

UINT PrivateExtractIconsA(
  [in]            LPCSTR szFileName,
  [in]            int    nIconIndex,
  [in]            int    cxIcon,
  [in]            int    cyIcon,
  [out, optional] HICON  *phicon,
  [out, optional] UINT   *piconid,
  [in]            UINT   nIcons,
  [in]            UINT   flags
);

パラメーター

[in] szFileName

型: LPCTSTR

アイコンの抽出元となるファイルのパスと名前。

[in] nIconIndex

型: int

抽出する最初のアイコンの 0 から始まるインデックス。 たとえば、この値が 0 の場合、関数は指定したファイルの最初のアイコンを抽出します。

[in] cxIcon

型: int

水平方向のアイコン サイズが必要です。 「解説」を参照してください。

[in] cyIcon

型: int

縦のアイコン のサイズが必要です。 「解説」を参照してください。

[out, optional] phicon

型: HICON*

返されたアイコン ハンドルの配列へのポインター。

[out, optional] piconid

型: UINT*

現在のディスプレイ デバイスに最適なアイコンの、返されたリソース識別子へのポインター。 返される識別子は、識別子がこの形式で使用できない場合に0xFFFFFFFFされます。 それ以外の場合、識別子を取得できない場合、返される識別子は 0 です。

[in] nIcons

型: UINT

ファイルから抽出するアイコンの数。 このパラメーターは、.exe ファイルと .dll ファイルから抽出する場合にのみ有効です。

[in] flags

型: UINT

この関数を制御するフラグを指定します。 これらのフラグは、LoadImage 関数で使用されるLR_* フラグです。

戻り値

型: UINT

phicon パラメーターが NULL 場合、戻り値はファイル内のアイコンの数になります。 関数が失敗した場合、戻り値は 0 になります。

phicon パラメーターが NULL されず、関数が成功した場合、戻り値は抽出されたアイコンの数になります。 それ以外の場合、ファイルが見つからない場合、戻り値は0xFFFFFFFFされます。

備考

この関数は、実行可能ファイル (.exe)、DLL (.dll)、アイコン (.ico)、カーソル (.cur)、アニメーション カーソル (.ani)、ビットマップ (.bmp) ファイルから抽出します。 Windows 3.x 16 ビット実行可能ファイル (.exe または .dll) からの抽出もサポートされています。

cxIcon パラメーターと cyIcon パラメーターは、抽出するアイコンのサイズを指定します。 パラメーターの LOWORD に最初のサイズを、HIWORD に 2 番目のサイズを配置することで、2 つのサイズを抽出できます。 たとえば、cxIcon パラメーターと cyIcon パラメーターの両方の MAKELONG(24, 48) は、24 と 48 の両方のサイズ アイコンを抽出します。

DestroyIcon 関数 呼び出して、PrivateExtractIcons によって抽出されたすべてのアイコンを破棄する必要があります。

この関数は、Windows XP Service Pack 1 (SP1) および Windows Server 2003 まで SDK ヘッダーとライブラリに含まれていませんでした。 この関数のヘッダー ファイルとインポート ライブラリがない場合は、LoadLibrary を使用して関数を呼び出し、GetProcAddressを できます。

手記

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

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winuser.h
ライブラリ User32.lib
DLL User32.dll
API セットの ext-ms-win-ntuser-misc-l1-5-1 (Windows 10 バージョン 10.0.14393 で導入)

関連項目

概念

DestroyIcon

ExtractIcon

ExtractIconEx を する

アイコンの

リファレンス