Bagikan melalui


Fungsi EnumColorProfilesW (icm.h)

Menghitung semua profil yang memenuhi kriteria enumerasi yang diberikan.

Sintaks

BOOL EnumColorProfilesW(
  PCWSTR     pMachineName,
  PENUMTYPEW pEnumRecord,
  PBYTE      pEnumerationBuffer,
  PDWORD     pdwSizeOfEnumerationBuffer,
  PDWORD     pnProfiles
);

Parameter

pMachineName

Dicadangkan. Harus NULL. Parameter ini dimaksudkan untuk menunjuk ke nama komputer untuk menghitung profil. Penunjuk NULL menunjukkan komputer lokal.

pEnumRecord

Penunjuk ke struktur yang menentukan kriteria enumerasi.

pEnumerationBuffer

Pointer ke buffer tempat profil akan dijumlahkan. String MULTI_SZ nama profil yang memenuhi kriteria yang ditentukan dalam *pEnumRecord akan ditempatkan di buffer ini.

pdwSizeOfEnumerationBuffer

Penunjuk ke variabel yang berisi ukuran buffer yang diacu oleh pBuffer. Saat kembali, *pdwSize berisi ukuran buffer yang benar-benar digunakan atau diperlukan.

pnProfiles

Penunjuk ke variabel yang akan berisi, saat dikembalikan, jumlah nama profil benar-benar disalin ke buffer.

Menampilkan nilai

Jika fungsi ini berhasil, nilai yang dikembalikan adalah TRUE.

Jika fungsi ini gagal, nilai yang dikembalikan adalah FALSE. Untuk informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Beberapa profil biasanya dikaitkan dengan printer, berdasarkan jenis kertas dan tinta. Ada profil default untuk setiap perangkat. Untuk profil International Color Consortium (ICC), GDI memilih yang terbaik dari profil terkait ICC saat aplikasi Anda membuat konteks perangkat (DC).

Jangan mencoba menggunakan EnumColorProfiles untuk menentukan profil default untuk perangkat. Sebagai gantinya, buat konteks perangkat untuk perangkat lalu panggil fungsi GetICMProfile . Pada Windows Vista dan Windows 7, fungsi WcsGetDefaultColorProfile juga dapat digunakan untuk menentukan profil warna default perangkat.

Jika anggota dwFields dari struktur jenis ENUMTYPE yang diarahkan oleh parameter pEnumRecord diatur ke ET_DEVICENAME, fungsi ini akan menghitung semua profil warna yang terkait dengan semua jenis perangkat yang melekat pada komputer pengguna, terlepas dari kelas perangkat. Jika anggota dwFields dari struktur yang diarahkan oleh parameter pEnumRecord diatur ke ET_DEVICENAME atau ET_DEVICECLASS dan kelas perangkat ditentukan dalam anggota dwDeviceClass struktur, fungsi ini hanya akan menghitung profil yang terkait dengan kelas perangkat yang ditentukan. Jika anggota dwFields diatur hanya ke ET_DEVICECLASS, fungsi EnumColorProfiles akan menghitung semua profil yang dapat dikaitkan dengan jenis perangkat tersebut.

Setiap kali EnumColorProfiles memeriksa profil yang terkait dengan perangkat tertentu, hasilnya bergantung pada apakah pengguna telah memilih untuk menggunakan daftar profil di seluruh sistem yang terkait dengan perangkat tersebut, atau daftarnya sendiri ("per pengguna"). Memanggil WcsSetUsePerUserProfiles dengan parameter usePerUserProfiles yang diatur ke TRUE menyebabkan panggilan mendatang ke EnumColorProfiles hanya melihat daftar asosiasi profil per pengguna saat ini untuk perangkat yang ditentukan. Memanggil WcsSetUsePerUserProfiles dengan parameter usePerUserProfiles yang diatur ke FALSE menyebabkan panggilan mendatang ke EnumColorProfiles melihat daftar asosiasi profil di seluruh sistem untuk perangkat yang ditentukan. Jika WcsSetUsePerUserProfiles belum pernah dipanggil untuk pengguna saat ini, EnumColorProfiles memeriksa daftar di seluruh sistem.

Aplikasi Anda dapat menggunakan EnumColorProfiles untuk mendapatkan ukuran buffer tempat profil dijumlahkan. Ini harus memanggil fungsi EnumColorProfiles dengan parameter pBuffer diatur ke NULL. Ketika fungsi kembali, parameter pdwSize akan berisi ukuran buffer yang diperlukan dalam byte. Program Anda dapat menggunakan informasi tersebut untuk mengalokasikan buffer enumerasi. Kemudian dapat memanggil EnumColorProfiles lagi dengan parameter pBuffer diatur ke alamat buffer.

Fungsi ini akan memberikan informasi untuk mengonversi informasi DMP khusus WCS ke rekaman EnumType warisan dalam mengaktifkan enumerasi profil yang konsisten. Defaultnya akan sama dengan ICC jika informasi ini tidak ada.

Dukungan per pengguna/LUA

Enumerasi khusus untuk pengguna saat ini. Asosiasi perangkat pengguna di seluruh sistem dan saat ini dipertimbangkan. Untuk konfigurasi profil default, pengaturan pengguna saat ini mengambil alih yang lebar sistem.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header icm.h

Lihat juga