Bagikan melalui


Fungsi PrivateExtractIconsA (winuser.h)

[Fungsi ini tidak ditujukan untuk penggunaan umum. Ini mungkin diubah atau tidak tersedia dalam versi Windows berikutnya.]

Membuat array handel ke ikon yang diekstrak dari file tertentu.

Sintaksis

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

Parameter

[in] szFileName

Jenis: LPCTSTR

Jalur dan nama file tempat ikon akan diekstrak.

[in] nIconIndex

Jenis: int

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

[in] cxIcon

Jenis: int

Ukuran ikon horizontal diinginkan. Lihat Komentar.

[in] cyIcon

Jenis: int

Ukuran ikon vertikal diinginkan. Lihat Komentar.

[out, optional] phicon

Jenis: HICON*

Penunjuk ke array handel ikon yang dikembalikan.

[out, optional] piconid

Jenis: UINT*

Penunjuk ke pengidentifikasi sumber daya yang dikembalikan untuk ikon yang paling sesuai dengan perangkat tampilan saat ini. Pengidentifikasi yang dikembalikan 0xFFFFFFFF jika pengidentifikasi tidak tersedia untuk format ini. Pengidentifikasi yang dikembalikan adalah 0 jika pengidentifikasi tidak dapat diperoleh.

[in] nIcons

Jenis: UINT

Jumlah ikon yang akan diekstrak dari file. Parameter ini hanya valid saat mengekstrak dari file .exe dan .dll.

[in] flags

Jenis: UINT

Menentukan bendera yang mengontrol fungsi ini. Bendera ini adalah bendera LR_* yang digunakan oleh fungsi loadImage .

Mengembalikan nilai

Jenis: UINT

Jika parameter phicon NULL dan fungsi ini berhasil, maka nilai yang dikembalikan adalah jumlah ikon dalam file. Jika fungsi gagal, maka nilai yang dikembalikan adalah 0.

Jika parameter phicon tidak NULL dan fungsi berhasil, maka nilai yang dikembalikan adalah jumlah ikon yang diekstrak. Jika tidak, nilai pengembalian 0xFFFFFFFF jika file tidak ditemukan.

Komentar

Fungsi ini mengekstrak dari file executable (.exe), DLL (.dll), ikon (.ico), kursor (.cur), kursor animasi (.ani), dan bitmap (.bmp). Ekstraksi dari executable Windows 3.x 16-bit (.exe atau .dll) juga didukung.

Parameter cxIcon dan cyIcon menentukan ukuran ikon yang akan diekstrak. Dua ukuran dapat diekstrak dengan menempatkan ukuran pertama dalam LOWORD parameter dan ukuran kedua dalam HIWORD. Misalnya, MAKELONG(24, 48) untuk parameter cxIcon dan cyIcon akan mengekstrak ikon ukuran 24 dan 48.

Anda harus menghancurkan semua ikon yang diekstrak oleh PrivateExtractIcons dengan memanggil fungsi DestroyIcon.

Fungsi ini tidak disertakan dalam header dan pustaka SDK hingga Windows XP Service Pack 1 (SP1) dan Windows Server 2003. Jika Anda tidak memiliki file header dan mengimpor pustaka untuk fungsi ini, Anda dapat memanggil fungsi menggunakan LoadLibrary dan GetProcAddress.

Nota

Header winuser.h mendefinisikan PrivateExtractIcons sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur 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

Syarat Nilai
klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Platform Target Windows
Header winuser.h
Pustaka User32.lib
DLL User32.dll
set API ext-ms-win-ntuser-misc-l1-5-1 (diperkenalkan di Windows 10, versi 10.0.14393)

Lihat juga

Konseptual

DestroyIcon

ExtractIcon

ExtractIconEx

Ikon

Referensi