Tidak dapat menonaktifkan penskalaan DPI untuk Visual Studio 2012

11

Saya ingin DPI tinggi diaktifkan untuk sebagian besar aplikasi yang saya gunakan pada 14 "1920x1080 laptop saya, kecuali untuk beberapa seperti Visual Studio yang mendapat manfaat dari ruang ekstra. Namun, pengaturan" nonaktifkan DPI tinggi "dalam kompatibilitas tidak melakukan apa-apa. Saya menggunakan Windows 8.

Aleksandr Dubinsky
sumber
Synetech mengedit pertanyaan ini. Saya tidak dapat menemukan cara untuk mengomentari revisinya atau mengiriminya pesan, jadi saya akan memposting alasannya di sini: Pertanyaannya khusus untuk VS 2012 (dan mungkin aplikasi lain yang menggunakan kerangka kerja tertentu misalnya WPF) di mana kompatibilitas DPI reguler pengaturan tidak berfungsi. Juga, hampir pasti tidak spesifik untuk Windows 8, meskipun saya belum mengujinya pada 7 / Vista.
Aleksandr Dubinsky
Saya menghapus Windowstag karena seharusnya hanya digunakan jika efek SEMUA versi Windowssejak Anda Windows 8hanya menggunakan tag yang berlaku untuk Anda.
Ramhound

Jawaban:

2

saya bertanya kepada Chris Jackson, pria Microsoft AppCompat ; tidak ada cara untuk melakukan ini.

Kami tidak memiliki kemampuan seperti itu, mode skala adalah apa yang kami miliki untuk menangani situasi tersebut. Ya, jelas ada beberapa hal yang kurang optimal tentang bagaimana kita melakukan itu (saya juga benci fuzzies), tetapi sulit untuk mendapatkan perbaikan kedua yang disetujui yang secara teknis menyelesaikan hal yang sama karena itu berarti bahwa insinyur tidak melakukan hal lain untuk membuat dunia menjadi tempat yang lebih baik.

Saya juga menanyakan hal yang hampir sama di sini .

Ian Boyd
sumber
2
Terimakasih atas balasan anda. Mendengar ini, dan mendengar komentar lain tentang pengembangan C, orang mendapat kesan bahwa Microsoft tidak memiliki uang dan hampir tidak ada selusin orang yang bekerja untuk itu. Tidak ada perhatian terhadap detail. Hal-hal kecil tidak pernah diperbaiki. Semua atas nama "kita tidak memiliki sumber daya." Seberapa tidak efisienkah MS? Bagaimanapun, ini sedikit masalah karena saya membayar mahal untuk tampilan yang hanya menguntungkan beberapa aplikasi yang haus layar. Saya telah mematikan DPI Tinggi sepenuhnya, tetapi mengapa semua aplikasi lain harus kecil? Apakah DPI per-aplikasi sangat sulit? Chris mengimplikasikan perbaikan itu mudah, tetapi "dilarang".
Aleksandr Dubinsky
@AlexandrDubinsky - Jika Anda mendapatkan kesan itu maka saya tidak tahu apa yang Anda dengar tetapi apa yang dilakukan Microsoft. Ada ratusan peningkatan antara .NET 4.0 dan .NET 4.5.
Ramhound
@Rahmound Eric Lippert menjawab pertanyaan SO mengapa C # tidak dapat menyimpulkan tipe generik untuk konstruktor dengan sesuatu seperti, "tidak ada masalah nyata, itu akan banyak seperti menyimpulkan mereka untuk metode. Tapi kami memiliki anggaran terbatas [--yaah kanan]. Dan, btw, konsistensi bahasa adalah prioritas rendah. " Contoh lain dalam C # adalah batasan tipe umum untuk Enum dan delegasi, yang juga sangat tidak mudah untuk diimplementasikan. Atau, misalnya, Word / Excel 2010 masih memiliki perilaku Alt + Tab yang aneh karena tidak ada yang mau menulis ulang peretasan di sekitar MDI lama. Atau semua Win8 yang bukan Metro. Daftar berjalan, ditambah balasan ini
Aleksandr Dubinsky
@Rahmound Filosofi MS hanyalah ini: menambahkan fitur baru itu bagus. Memperbaiki hal-hal yang sudah ditulis adalah "pemborosan sumber daya kami yang berharga dan sangat kecil" bahkan ketika tidak ada lagi fitur untuk ditambahkan. Itu tidak sesuai dengan berapa banyak uang yang dimiliki MS, dan benar-benar memakan waktu ketika skala waktu adalah beberapa dekade. Setengah dari Word / dialog Excel ada sebelum Office 95! Ditambah kegilaan multi-jendela. Visual Studio adalah rasa sakit untuk menggunakan telah menemukan Netbeans GUI VS SEPENUHNYA ditulis ulang dalam WPF untuk 2010, dan TIDAK ADA YANG TUA DITINGKATKAN. Stasis. Stasis yang indah dan nyaman.
Aleksandr Dubinsky
MS adalah perusahaan besar. Yang berarti, di Amerika, mereka memiliki basis karyawan yang besar tetapi sangat sedikit orang yang benar-benar bekerja. Semua orang ingin bekerja untuk M $, tetapi tidak ada yang melakukannya karena cinta coding, atau sangat sedikit melakukannya, lagi.
Motes
17

INI MUNGKIN

Saya mencoba ini pada Windows 8 saya dan berfungsi dengan baik:

  1. Buka peluncur Visual Studio Shortcut / aplikasi Anda
  2. Klik Kanan dan Pemecahan Masalah Kompatibilitas
  3. Lanjutkan Program Pemecahan Masalah
  4. Program Pemecahan Masalah
  5. Centang: Program terbuka tetapi tidak ditampilkan dengan benar
  6. Program Uji ..
  7. Ya, Simpan Perubahan

Anda sudah siap!

yonasstephen
sumber
Bekerja pada Visual Studio 2012 Pembaruan 5 pada Windows 8
rtc11
1
Bekerja dengan VS 2015 pada Windows 10, kecuali Anda harus menemukan peluncur aplikasi melalui menu mulai dan membuka lokasi file pintasan, karena item menu pemecahan masalah kompatibilitas hanya tersedia ketika Anda mengklik kanan dari pintasan di windows explorer.
Tjaart
Bekerja pada VS 2015 di windows 8.1.
Zoomzoom
Ini telah menggangguku untuk sementara waktu sekarang. Ini bekerja dengan sempurna, terima kasih!
RyanOC
Bekerja pada VS 2017 pada windows 10
Nick Tsai
16

Ini sangat mungkin. Saya menggunakan pengaturan "kompatibilitas" pada executable untuk melakukannya tetapi untuk beberapa alasan itu tidak tersedia untuk VS. Namun kunci registri yang setara berfungsi dengan baik. Kuncinya adalah HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersdan Anda hanya perlu menambahkan nilai string "~ HIGHDPIAWARE" (sama dengan mencentang kotak itu di tab kompatibilitas properti yang dapat dieksekusi). Atau Anda bisa menjalankan ini:

reg tambahkan "HKCU \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers" / v "path lengkap ke Executable" / t REG_SZ / d "~ HIGHDPIAWARE"

futuresandwich
sumber
1
Selamat datang di SU! Jawaban hanya tautan dianggap sebagai tidak-tidak karena kemungkinan pembusukan tautan di masa mendatang. Harap edit jawaban Anda dan sertakan informasi terkait secara langsung, dan sertakan tautan sebagai referensi sumber.
Ƭᴇcʜιᴇ007
Ini akan bekerja secara khusus untuk VS? Saya tidak melihat apa yang mengidentifikasi exe
Aleksandr Dubinsky
Ya maaf markup Aleksandr SU telah menghapus placeholder. Periksa kembali jawabannya.
futuresandwich
Ini juga berfungsi di Visual Studio 2013 btw.
Brad Bamford
Untuk Visual Studio 2013, di jalur registri yang ditentukan, saya memiliki kunci string berikut: C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exedengan nilai ~ RUNASADMIN HIGHDPIAWAREuntuk Jalankan sebagai Admin dan Tidak Ada Penskalaan
Ivan Akcheurov