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) |