Fungsi SHExtractIconsW

Membuat array handel ke ikon yang diekstrak dari file tertentu.

Catatan

Fungsi ini tersedia melalui Windows XP Service Pack 2 (SP2). Ini mungkin diubah atau tidak tersedia dalam versi berikutnya. Gunakan fungsi SHDefExtractIcon sebagai gantinya.

Sintaks

UINT SHExtractIconsW(
  _In_  LPCWSTR pszFileName,
  _In_  int     nIconIndex,
  _In_  int     cxIcon,
  _In_  int     cyIcon,
  _Out_ HICON   *phIcon,
  _Out_ UINT    *pIconId,
  _In_  UINT    nIcons,
  _In_  UINT    flags
);

Parameter

pszFileName [in]

Jenis: LPCWSTR

Penunjuk ke nama file untuk mengekstrak ikon.

nIconIndex [in]

Jenis: int

Indeks ikon pertama yang diekstrak dari sumber daya bernama di pszFileName.

cxIcon [in]

Jenis: int

Lebar ikon yang diinginkan. Lihat Keterangan.

cyIcon [in]

Jenis: int

Tinggi ikon yang diinginkan. Lihat Keterangan.

phIcon [out]

Jenis: HICON*

Saat fungsi ini kembali, berisi penunjuk ke array handel ikon.

pIconId [out]

Jenis: UINT*

Ketika fungsi ini kembali, berisi penunjuk ke pengidentifikasi sumber daya ikon yang diekstrak yang paling sesuai dengan perangkat tampilan saat ini. Jika tidak ada pengidentifikasi yang tersedia untuk format ini, pengidentifikasi berisi 0xFFFFFFFF. Jika tidak ada pengidentifikasi yang dapat diperoleh karena alasan lain, mengembalikan nol.

nIcons [in]

Jenis: UINT

Jumlah ikon yang akan diekstrak dari sumber daya bernama di pszFileName. Parameter ini hanya valid ketika sumber daya adalah file .exe atau .dll.

flags [in]

Jenis: UINT

Bendera yang mengontrol fungsi ini. Untuk nilai yang mungkin, lihat parameter fuLoad dari fungsi LoadImage .

Nilai hasil

Jenis: UINT

Nilai bukan nol jika berhasil; jika tidak, nol.

Keterangan

SHExtractIconsW mengekstrak dari jenis file berikut.

  • Dapat dieksekusi (.exe)
  • DLL (.dll)
  • Ikon (.ico)
  • Kursor (.cur)
  • Kursor animasi (.ani)
  • Bitmap (.bmp)

Ekstraksi dari Windows 3.file yang dapat dieksekusi x 16-bit (.exe atau .dll) juga didukung.

Parameter cxIcon dan cyIcon menentukan ukuran ikon yang akan diekstrak. Dua ukuran dapat diekstrak melalui setiap parameter dengan memisahkan nilai antara LOWORD dan HIWORD-nya. Letakkan ukuran pertama yang diinginkan dalam LOWORD parameter dan ukuran kedua dalam HIWORD. Misalnya, MAKELONG(24, 48) untuk ekstrak cxIcon dan cyIcon baik ikon berukuran 24 dan 48.

Proses panggilan bertanggung jawab untuk menghancurkan semua ikon yang diekstrak melalui fungsi ini dengan memanggil fungsi DestroyIcon.

SHExtractIconsW tidak diekspor berdasarkan nama atau dideklarasikan dalam file header publik. Untuk menggunakannya, Anda harus mendeklarasikan prototipe yang cocok dan menggunakan GetProcAddress untuk meminta penunjuk fungsi dari Shell32.dll yang dapat digunakan untuk memanggil fungsi ini.

Persyaratan

Persyaratan Value
Klien minimum yang didukung
Windows 2000 Professional, Windows XP [hanya aplikasi desktop]
Server minimum yang didukung
Windows Server 2003 [hanya aplikasi desktop]
DLL
Shell32.dll (versi 5.0 atau yang lebih baru)
Nama Unicode dan ANSI
SHExtractIconsW (Unicode)