Fungsi EnumDisplaySettingsExA (winuser.h)
Fungsi EnumDisplaySettingsEx mengambil informasi tentang salah satu mode grafis untuk perangkat tampilan. Untuk mengambil informasi untuk semua mode grafis untuk perangkat tampilan, lakukan serangkaian panggilan ke fungsi ini.
Fungsi ini berbeda dari EnumDisplaySettings karena ada parameter dwFlags .
Sintaks
BOOL EnumDisplaySettingsExA(
[in] LPCSTR lpszDeviceName,
[in] DWORD iModeNum,
[out] DEVMODEA *lpDevMode,
[in] DWORD dwFlags
);
Parameter
[in] lpszDeviceName
Penunjuk ke string yang dihentikan null yang menentukan perangkat tampilan tentang mode grafis mana fungsi akan mendapatkan informasi.
Parameter ini null atau DISPLAY_DEVICE. DeviceName dikembalikan dari EnumDisplayDevices. Nilai NULL menentukan perangkat tampilan saat ini pada komputer tempat utas panggilan dijalankan.
[in] iModeNum
Menunjukkan jenis informasi yang akan diambil. Nilai ini bisa menjadi indeks mode grafik atau salah satu nilai berikut.
Nilai | Makna |
---|---|
|
Ambil pengaturan saat ini untuk perangkat tampilan. |
|
Ambil pengaturan untuk perangkat tampilan yang saat ini disimpan dalam registri. |
Indeks mode grafik dimulai pada nol. Untuk mendapatkan informasi untuk semua mode grafis perangkat tampilan, lakukan serangkaian panggilan ke EnumDisplaySettingsEx, sebagai berikut: Atur iModeNum ke nol untuk panggilan pertama, dan tambahkan iModeNum satu per satu untuk setiap panggilan berikutnya. Lanjutkan memanggil fungsi hingga nilai yang dikembalikan adalah nol.
Saat Anda memanggil EnumDisplaySettingsEx dengan iModeNum diatur ke nol, sistem operasi menginisialisasi dan menyimpan informasi tentang perangkat tampilan. Saat Anda memanggil EnumDisplaySettingsEx dengan iModeNum yang diatur ke nilai bukan nol, fungsi mengembalikan informasi yang di-cache terakhir kali fungsi dipanggil dengan iModeNum diatur ke nol.
[out] lpDevMode
Penunjuk ke struktur DEVMODE tempat fungsi menyimpan informasi tentang mode grafis yang ditentukan. Sebelum memanggil EnumDisplaySettingsEx, atur anggota dmSize ke sizeof (DEVMODE), dan atur anggota dmDriverExtra untuk menunjukkan ukuran, dalam byte, dari ruang tambahan yang tersedia untuk menerima data driver privat.
Fungsi EnumDisplaySettingsEx akan mengisi anggota dmFields dari lpDevMode dan satu atau beberapa anggota lain dari struktur DEVMODE . Untuk menentukan anggota mana yang ditetapkan oleh panggilan ke EnumDisplaySettingsEx, periksa bitmask dmFields . Beberapa bidang yang biasanya diisi oleh fungsi ini meliputi:
- dmBitsPerPel
- dmPelsWidth
- dmPelsHeight
- dmDisplayFlags
- dmDisplayFrequency
- dmPosition
- dmDisplayOrientation
[in] dwFlags
Parameter ini bisa menjadi nilai berikut.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol.
Keterangan
Fungsi gagal jika iModeNum lebih besar dari indeks mode grafis terakhir perangkat tampilan. Seperti yang disebutkan dalam deskripsi parameter iModeNum , Anda dapat menggunakan perilaku ini untuk menghitung semua mode grafis perangkat tampilan.
Virtualisasi DPI
API ini tidak berpartisipasi dalam virtualisasi DPI. Output yang diberikan selalu dalam hal piksel fisik, dan tidak terkait dengan konteks panggilan.Catatan
Header winuser.h mendefinisikan EnumDisplaySettingsEx 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
Persyaratan | Nilai |
---|---|
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 (termasuk Windows.h) |
Pustaka | User32.lib |
DLL | User32.dll |
Set API | ext-ms-win-ntuser-sysparams-ext-l1-1-1 (diperkenalkan dalam Windows 10, versi 10.0.14393) |