Kaip pataisyti programas, kurios atrodo mažos didelio DPI ir didelės raiškos ekranuose
Šiandien daugelis kompiuterių pristatomi su labai didelės raiškos ekranais, net jei kompiuterio formos koeficientas yra mažesnis, pavyzdžiui, „Ultrabook“ ar planšetinis kompiuteris. Arba galite turėti darbalaukio monitorių su 4K raiška. Esant tokiai skyrai, „Windows“ automatiškai įjungia DPI mastelio keitimą, todėl viskas ekrane tampa didesnė. Tačiau yra kai kurių trečiųjų šalių programų, kurios netinkamai atvaizduojamos didelio DPI ekranuose. Jie atrodo per maži ekrano raiškai. Pažiūrėkime, kaip juos ištaisyti, jei „Windows 8.1“ arba „Windows 10“ netinkamai nustato jų mastelį.
Paprastai tokios programėlės buvo parašytos prieš pasirodant aukšto DPI ekranams ir nebuvo tinkamai atnaujintos, kad palaikytų aukštą DPI. Ekrane jie atrodo per maži su neįskaitomais šriftais ir netinkamai keičiasi. Dažnai mygtukai yra ne vietoje arba per maži, kad būtų galima spustelėti senas programas, kurios nebuvo atnaujintos didelio DPI ekranams. Paprastai „Windows“ automatiškai keičia visų programų mastelį, naudodama XP stiliaus mastelį ir DPI virtualizavimą toms programoms, kurios nepraneša „Windows“, kad žino DPI. Tačiau yra kai kurių programų, kurios „Windows“ meluoja, kad jos žino aukštą DPI, net jei jos nežino, todėl „Windows“ jų nekeičia. Tokios programos netinkamai atvaizduojamos naudojant „Full HD“ arba 4K raišką.
Norint juos ištaisyti, galima atlikti triuką, kuris verčia „Windows“ keisti programos mastelį naudojant DPI virtualizavimą. Tačiau, remiantis mano bandymais, tai galima saugiai atlikti tik „Windows 8.1“ ir „Windows 10“. Procedūra yra ilga ir šiek tiek sudėtinga pradedantiesiems vartotojams, tačiau sistemoje „Windows“ nėra greitos grafinės sąsajos, kuri priverstų įjungti DPI virtualizavimą konkrečiai programai. Registro koregavimas, susijęs su šiuo koregavimu Windows 7 arba Windows 8.0, sukėlė keistų elgesys ir šalutiniai poveikiai, pvz., išnyksta sistemos dėklo piktogramos, todėl darykite tai savo pačių rizika, jei paleisite šios OS. Jei naudojate „Windows 8.1“ arba „Windows 10“, vykdykite šias instrukcijas.
- Sukurkite tuščią tekstinį failą iš meniu Naujas, dešiniuoju pelės mygtuku spustelėdami bet kur, pvz. darbalaukyje arba aplanke. Tekstiniame faile turi būti programos pavadinimas EXE, kuris rodomas per mažas, o po jo – tekstas „.manifest“. Pavyzdžiui, jei jūsų naudojamos programos, kuri atrodo maža, pavadinimas yra SearchTool.exe, sukurtas tekstinis failas turėtų būti pavadintas „SearchTool.exe.manifest“. Jei nežinote EXE pavadinimo, dešiniuoju pelės mygtuku spustelėkite užduočių juostą ir atidarykite užduočių tvarkytuvę, kol ta programa veikia. Pasirinkite programą ir dešiniuoju pelės mygtuku spustelėkite ją ir spustelėkite Eiti į išsamią informaciją. Skirtuke Išsami informacija bus rodomas EXE pavadinimas. Tada galite sukurti tekstinį failą tinkamu pavadinimu. pvz. Processname.exe.manifest.
- Atsisiųskite ir įdiekite nemokamą Resource Hacker programą iš čia: http://www.angusj.com/resourcehacker/. Tai išteklių redagavimo įrankis. Priežastis, kodėl mums to reikia, yra ta, kad programos aprašas kartais saugomas EXE, o „Windows“ pagal numatytuosius nustatymus teikia pirmenybę šiam vidiniam programos aprašui. Nenorime visiškai ignoruoti vidinio programos aprašo, jei jis yra, ty jei programos kūrėjas jį pridėjo nes be DPI mastelio keitimo jame yra kitos svarbios informacijos apie programos konfigūraciją ir UAC pakilimas.
- Paleiskite Resource Hacker ir atidarykite joje programos EXE, kuris didelės raiškos ekrane atrodo nenaudingai mažas.
- Programos (EXE) aprašo išteklius paprastai saugomas kaip 24 išteklių tipas. Patikrinkite, ar šis 24 šaltinis egzistuoja. Jei tokio 24 šaltinio nėra atidarytame EXE, uždarykite Resource Hacker ir atidarykite failą. sukurtą 1 veiksme Notepad ir nukopijuokite bei įklijuokite toliau esantį tekstą į jį, tada išsaugokite ir uždarykite tekstą failas:
1.0 UTF-8 taip?>
Netiesa Dabar pereikite tiesiai prie 9 veiksmo tuo atveju, kai atidarytame EXE nebuvo 24 šaltinio ir atlikote aukščiau nurodytą veiksmą.
- Jei vietoj to EXE, kurį atidarėte Resource Hacker, yra išteklius 24, tada išplėskite mazgą pavadinimu 24 -> 1 ir spustelėkite 1033 elementą (tai yra 1033 leidimams anglų kalba). Dešiniuoju pelės mygtuku spustelėkite dešinėje srityje ir spustelėkite Pasirinkti viską. Tada dar kartą dešiniuoju pelės mygtuku spustelėkite pasirinktą tekstą ir spustelėkite Kopijuoti ir uždaryti išteklių įsilaužėlį. Nekeiskite EXE vidinio aprašo, nes EXE gali būti pasirašytas skaitmeniniu būdu arba suspaustas. Mes nenorime keisti originalaus EXE.
- Atidarykite „Notepad“, atidarykite failą, kurį sukūrėte atlikdami 1 veiksmą „Notepad“, įklijuokite tai, ką nukopijavote iš „Resource Hacker“, į „Notepad“ ir išsaugokite šį failą meniu „Failas“.
- Šiame faile pažiūrėkite, ar yra skiltyje, kurios dpiaware vėliavėlė nustatyta į True (tai reiškia, kad programa teigia, kad žino DPI, jei ji atrodo maža didelio DPI ekrane):
Tiesa Jei jis yra, pakeiskite jį iš True į False. Jei programos aprašo informacijoje tokios su DPI žinomumu susijusios skilties nėra, pridėkite aukščiau pateiktą teksto bloką iškart po šios aprašo failo eilutės:
- Pakeiskite dpaware vėliavėlę iš True į False ir išsaugokite failo pakeitimus ir uždarykite jį.
- Nukopijuokite failą į EXE aplanką. Pavyzdžiui, jei programa įdiegta C:\Program Files\Contoso\SearchTool.exe, nukopijuokite manifestą į C:\Program Files\Contoso katalogą.
- Dabar turime pakoreguoti „Windows“, kad ji teiktų pirmenybę išoriniams aprašo failams, o ne vidiniams, įterptiems EXE. Šis registro koregavimas turi būti atliktas *tik* Windows 8.1 ir Windows 10. Jei naudojate „Windows 7“ arba „Windows 8.0 RTM“, atlikę toliau nurodytus registro pakeitimus, galite sukelti netikėtų šalutinių poveikių, pvz., kai kurios sistemos funkcijos arba programų gedimas.
- Atidarykite registro rengyklę (Regedit.exe) sistemoje „Windows 8.1“ arba „Windows 10“. Eikite į šį dalinį registro raktą:
HKEY_LOCAL_MACHINE > PROGRAMINĖ ĮRANGA > Microsoft > Windows > CurrentVersion > SideBySide
- Dešiniuoju pelės mygtuku spustelėkite, pasirinkite NAUJA > DWORD (32 bitų) reikšmė. Suteikite jam pavadinimą: PreferExternalManifest, tada paspauskite ENTER.
- Dešiniuoju pelės mygtuku spustelėkite PreferExternalManifest, tada spustelėkite Keisti. Įveskite vertės duomenis 1. Spustelėkite Gerai. Išeikite iš registro rengyklės.
- Dabar iš naujo paleiskite „Windows“ ir paleiskite programą, kuriai pridėjote šį aprašą.
Programos mastelis turėtų būti pritaikytas „Windows DPI“ virtualizavimo funkcijai ir nebeatrodys per maža su netinkamais valdikliais. Tekstas gali atrodyti neryškus, bet taip yra todėl, kad programos kūrėjas neatnaujino programos, kad būtų pasiektas didelis DPI. Šiek tiek neryškus tekstas yra toleruojamas nei neįskaitomai maža vartotojo sąsaja su mažais valdikliais.
Jei programa vis dar aktyviai kuriama, turėtumėte susisiekti su jos kūrėju, kad jis iš tikrųjų tinkamai padidintų jos mastelį esant aukštam DPI, o ne tik pažymėtų EXE kaip aukštą DPI. Jei programa nebeprižiūrima, vadinasi, jums nepasisekė. Tai taip gerai, kaip atrodys programa (su šiek tiek neryškiu tekstu). Tačiau programa turėtų būti tinkama naudoti dabar.