Fungsi SetProcessDpiAwareness (shellscalingapi.h)
Mengatur tingkat kesadaran DPI proses-default. Ini setara dengan memanggil SetProcessDpiAwarenessContext dengan nilai DPI_AWARENESS_CONTEXT yang sesuai.
Catatan
Disarankan agar Anda mengatur kesadaran DPI proses-default melalui manifes aplikasi, bukan panggilan API. Lihat Mengatur kesadaran DPI default untuk proses untuk informasi selengkapnya. Mengatur kesadaran DPI default proses melalui panggilan API dapat menyebabkan perilaku aplikasi yang tidak terduga.
Sintaks
HRESULT SetProcessDpiAwareness(
[in] PROCESS_DPI_AWARENESS value
);
Parameter
[in] value
Nilai kesadaran DPI yang akan ditetapkan. Nilai yang mungkin berasal dari enumerasi PROCESS_DPI_AWARENESS .
Mengembalikan nilai
Fungsi ini mengembalikan salah satu nilai berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Kesadaran DPI untuk aplikasi berhasil ditetapkan. |
|
Nilai yang diteruskan tidak valid. |
|
Kesadaran DPI sudah diatur, baik dengan memanggil API ini sebelumnya atau melalui manifes aplikasi (.exe). |
Keterangan
Versi Windows sebelumnya hanya memiliki satu nilai kesadaran DPI untuk seluruh aplikasi. Untuk aplikasi tersebut, rekomendasinya adalah menetapkan nilai kesadaran DPI dalam manifes seperti yang dijelaskan dalam PROCESS_DPI_AWARENESS. Di bawah rekomendasi itu, Anda tidak seharusnya menggunakan SetProcessDpiAwareness untuk memperbarui kesadaran DPI. Bahkan, panggilan ke API ini di masa mendatang akan gagal setelah kesadaran DPI ditetapkan sekali. Sekarang setelah kesadaran DPI terkait dengan utas daripada aplikasi, Anda dapat menggunakan metode ini untuk memperbarui kesadaran DPI. Namun, pertimbangkan untuk menggunakan SetThreadDpiAwarenessContext sebagai gantinya.
Untuk aplikasi yang lebih lama, sangat disarankan untuk tidak menggunakan SetProcessDpiAwareness untuk mengatur kesadaran DPI untuk aplikasi Anda. Sebagai gantinya, Anda harus menyatakan kesadaran DPI untuk aplikasi Anda dalam manifes aplikasi. Lihat PROCESS_DPI_AWARENESS untuk informasi selengkapnya tentang nilai kesadaran DPI dan cara mengaturnya dalam manifes.
Jika tingkat kesadaran DPI tidak diatur, nilai defaultnya adalah PROCESS_DPI_UNAWARE.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8.1 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2012 R2 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | shellscalingapi.h |
Pustaka | Shcore.lib |
DLL | Shcore.dll |