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.

Sintaks

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 diekstraksi.

[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 ingin. Lihat Keterangan.

[in] cyIcon

Jenis: int

Ukuran ikon vertikal ingin. Lihat Keterangan.

[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 adalah 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 bukan NULL dan fungsi berhasil, maka nilai yang dikembalikan adalah jumlah ikon yang diekstrak. Jika tidak, nilai yang dikembalikan 0xFFFFFFFF jika file tidak ditemukan.

Keterangan

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

Parameter cxIcon dan cyIcon menentukan ukuran ikon yang akan diekstrak. Dua ukuran dapat diekstraksi 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 pustaka impor untuk fungsi ini, Anda dapat memanggil fungsi menggunakan LoadLibrary dan GetProcAddress.

Catatan

Header winuser.h mendefinisikan PrivateExtractIcons 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 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header winuser.h
Pustaka User32.lib
DLL User32.dll
Set API ext-ms-win-ntuser-misc-l1-5-1 (diperkenalkan dalam Windows 10, versi 10.0.14393)

Lihat juga

Konseptual

DestroyIcon

ExtractIcon

ExtractIconEx

Ikon

Referensi