Bagikan melalui


Fungsi ExtractIconExA (shellapi.h)

Fungsi ExtractIconEx membuat array handel ke ikon besar atau kecil yang diekstrak dari file, DLL, atau file ikon yang dapat dieksekusi yang ditentukan.

Sintaks

UINT ExtractIconExA(
  [in]  LPCSTR lpszFile,
  [in]  int    nIconIndex,
  [out] HICON  *phiconLarge,
  [out] HICON  *phiconSmall,
        UINT   nIcons
);

Parameter

[in] lpszFile

Jenis: LPCTSTR

Penunjuk ke string yang dihentikan null yang menentukan nama file yang dapat dieksekusi, DLL, atau file ikon tempat ikon akan diekstraksi.

[in] nIconIndex

Jenis: int

Menentukan indeks berbasis nol dari ikon pertama yang akan diekstrak. Misalnya, jika nilai ini nol, fungsi mengekstrak ikon pertama dalam file yang ditentukan.

Jika nilai ini adalah –1 dan phiconLarge dan phiconSmall adalah NULL, fungsi mengembalikan jumlah total ikon dalam file yang ditentukan. Jika file adalah file atau DLL yang dapat dieksekusi, nilai yang dikembalikan adalah jumlah sumber daya RT_GROUP_ICON. Jika file adalah file .ico, nilai yang dikembalikan adalah 1.

Jika nilai ini adalah angka negatif dan phiconLarge atau phiconSmall bukan NULL, fungsi dimulai dengan mengekstrak ikon yang pengidentifikasi sumber dayanya sama dengan nilai absolut nIconIndex. Misalnya, gunakan -3 untuk mengekstrak ikon yang pengidentifikasi sumber dayanya adalah 3.

[out] phiconLarge

Jenis: HICON*

Penunjuk ke array handel ikon yang menerima handel ke ikon besar yang diekstrak dari file. Jika parameter ini NULL, tidak ada ikon besar yang diekstrak dari file.

[out] phiconSmall

Jenis: HICON*

Penunjuk ke array handel ikon yang menerima handel ke ikon kecil yang diekstrak dari file. Jika parameter ini NULL, tidak ada ikon kecil yang diekstrak dari file.

nIcons

Jenis: UINT

Jumlah ikon yang akan diekstrak dari file.

Menampilkan nilai

Jenis: UINT

Jika parameter nIconIndex adalah -1 dan parameter phiconLarge dan phiconSmall adalah NULL, maka nilai yang dikembalikan adalah jumlah ikon yang terkandung dalam file yang ditentukan.

Jika parameter nIconIndex adalah nilai apa pun selain -1 dan phiconLarge atau phiconSmall bukan NULL, nilai yang dikembalikan adalah jumlah ikon yang berhasil diekstraksi dari file.

Catatan

Jika fungsi mengalami kesalahan, fungsi akan mengembalikan UINT_MAX. Dalam hal ini, Anda dapat memanggil GetLastError untuk mengambil kode kesalahan. Misalnya, fungsi ini mengembalikan UINT_MAX jika file yang ditentukan oleh lpszFile tidak dapat ditemukan sementara parameter nIconIndex adalah nilai apa pun selain -1 dan phiconLarge atau phiconSmall bukan NULL. Dalam hal ini, GetLastError mengembalikan ERROR_FILE_NOT_FOUND (2).

Keterangan

Ketika mereka tidak lagi diperlukan, Anda harus menghancurkan semua ikon yang diekstrak oleh ExtractIconEx dengan memanggil fungsi DestroyIcon .

Untuk mengambil dimensi ikon besar dan kecil, gunakan fungsi ini dengan bendera SM_CXICON, SM_CYICON, SM_CXSMICON, dan SM_CYSMICON.

Catatan

Header shellapi.h mendefinisikan ExtractIconEx sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header shellapi.h
DLL Shell32.dll
Set API ext-ms-win-shell-shell32-l1-2-1 (diperkenalkan dalam Windows 10, versi 10.0.10240)

Lihat juga

ExtractAssociatedIcon

ExtractAssociatedIconEx

ExtractIcon