Fungsi GetDisplayConfigBufferSizes (winuser.h)
Fungsi GetDisplayConfigBufferSizes mengambil ukuran buffer yang diperlukan untuk memanggil fungsi QueryDisplayConfig .
Sintaks
LONG GetDisplayConfigBufferSizes(
[in] UINT32 flags,
[out] UINT32 *numPathArrayElements,
[out] UINT32 *numModeInfoArrayElements
);
Parameter
[in] flags
Jenis informasi yang akan diambil. Nilai untuk parameter Bendera harus salah satu nilai berikut.
QDC_ALL_PATHS
Pemanggil meminta ukuran tabel untuk menyimpan semua kombinasi jalur yang mungkin.
QDC_ONLY_ACTIVE_PATHS
Pemanggil meminta ukuran tabel untuk hanya menyimpan jalur aktif.
QDC_DATABASE_CURRENT
Pemanggil meminta ukuran tabel untuk menahan jalur aktif seperti yang didefinisikan dalam database persistensi untuk monitor yang saat ini tersambung.
[out] numPathArrayElements
Penunjuk ke variabel yang menerima jumlah elemen dalam tabel informasi jalur. Nilai parameter pNumPathArrayElements kemudian digunakan oleh panggilan berikutnya ke fungsi QueryDisplayConfig . Parameter ini tidak boleh NULL.
[out] numModeInfoArrayElements
Penunjuk ke variabel yang menerima jumlah elemen dalam tabel informasi mode. Nilai parameter pNumModeInfoArrayElements kemudian digunakan oleh panggilan berikutnya ke fungsi QueryDisplayConfig . Parameter ini tidak boleh NULL.
Mengembalikan nilai
Fungsi mengembalikan salah satu kode pengembalian berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Fungsi berhasil. |
|
Kombinasi parameter dan bendera yang ditentukan tidak valid. |
|
Sistem tidak menjalankan pengandar grafis yang ditulis sesuai dengan Windows Display Driver Model (WDDM). Fungsi ini hanya didukung pada sistem dengan driver WDDM berjalan. |
|
Pemanggil tidak memiliki akses ke sesi konsol. Kesalahan ini terjadi jika proses panggilan tidak memiliki akses ke desktop saat ini atau sedang berjalan pada sesi jarak jauh. |
|
Terjadi kesalahan yang tidak ditentukan. |
Keterangan
Mengingat konfigurasi jalur tampilan saat ini dan bendera yang diminta, GetDisplayConfigBufferSizes mengembalikan ukuran tabel jalur dan mode yang diperlukan untuk menyimpan informasi. GetDisplayConfigBufferSizes dapat mengembalikan nilai yang sedikit lebih besar dari yang sebenarnya diperlukan karena menentukan bahwa semua jalur sumber dan target valid; sedangkan, driver mungkin menempatkan beberapa batasan pada kemungkinan kombinasi.
Karena GetDisplayConfigBufferSizes hanya dapat menentukan ukuran array yang diperlukan dari saat itu pada waktunya, ada kemungkinan bahwa antara panggilan ke GetDisplayConfigBufferSizes dan QueryDisplayConfig konfigurasi sistem telah berubah dan ukuran array yang disediakan tidak lagi cukup untuk menyimpan data jalur baru.
Jika penelepon menyadari bahwa pemanggil harus mengaktifkan sumber dan target tambahan, pemanggil dapat mengalokasikan array informasi mode yang lebih besar daripada yang dikembalikan dari GetDisplayConfigBufferSizes sehingga memiliki ruang untuk menambahkan mode sumber dan target tambahan setelah memanggil QueryDisplayConfig dan sebelum memanggil SetDisplayConfig.
Contoh
Lihat QueryDisplayConfig untuk contoh GetDisplayConfigBufferSizes.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows. |
Target Platform | Universal |
Header | winuser.h (sertakan Windows.h) |
Pustaka | User32.lib; OneCoreUAP.lib di Windows 10 |
DLL | User32.dll |
Set API | ext-ms-win-ntuser-sysparams-ext-l1-1-1 (diperkenalkan dalam Windows 10, versi 10.0.14393) |