Idag levereras många datorer med mycket hög upplösning även om datorns formfaktor är mindre, till exempel en Ultrabook eller en surfplatta. Eller så kan du ha en stationär bildskärm med 4K-upplösning. Vid sådana upplösningar aktiverar Windows automatiskt DPI-skalning så att allt på skärmen blir större. Det finns dock några tredjepartsappar som inte renderas ordentligt på höga DPI-skärmar. De ser för små ut för skärmupplösningen. Låt oss se hur vi fixar dem om Windows 8.1 eller Windows 10 inte skalar dem ordentligt.
Vanligtvis skrevs sådana appar innan höga DPI-skärmar dök upp och uppdaterades inte ordentligt för att stödja hög DPI. De verkar för små på skärmen med omöjliga att läsa teckensnitt och de skalas inte ordentligt. Ofta är knapparna felplacerade eller för små för att klicka på gamla appar som inte har uppdaterats för höga DPI-skärmar. Windows skalar normalt alla appar automatiskt med XP-skalning samt DPI-virtualisering för de appar som inte berättar för Windows att de är DPI-medvetna. Men det finns vissa appar som ljuger för Windows att de är höga DPI medvetna även om de inte är det, varför Windows inte skalar dem. Sådana appar görs felaktigt i full HD- eller 4K-upplösningar.
För att fixa dem kan ett trick göras som tvingar Windows att skala appen med DPI-virtualisering. Men enligt min testning kan det bara göras säkert på Windows 8.1 och Windows 10. Förfarandet är långt och lite komplext för nybörjare, men det finns inget snabbt GUI i Windows för att tvinga DPI-virtualisering för en specifik app. Att göra registerjusteringen som är involverad i denna tweak på Windows 7 eller Windows 8.0 orsakade några konstiga beteenden och biverkningar som att systemfältikonerna försvann, så gör det på egen risk om du kör dessa operativsystem. Fortsätt med dessa instruktioner om du kör Windows 8.1 eller Windows 10.
Annons
- Skapa en tom textfil från menyn Ny genom att högerklicka var som helst, t.ex. på skrivbordet eller i en mapp. Textfilen ska ha namnet på programmet EXE, som blir för litet, följt av texten '.manifest'. Till exempel, om namnet på det program du använder som ser litet ut är SearchTool.exe, bör textfilen du skapar heta 'SearchTool.exe.manifest'. Om du inte vet EXE-namnet högerklickar du på Aktivitetsfältet och öppnar Aktivitetshanteraren medan den appen körs. Välj appen och högerklicka på den och klicka på Gå till detaljer. På fliken Detaljer visas EXE-namnet. Sedan kan du skapa textfilen med rätt namn. t.ex. Processnamn.exe.manifest.
- Hämta och installera det gratis Resource Hacker-programmet härifrån: http://www.angusj.com/resourcehacker/ . Det är ett resursredigeringsverktyg. Anledningen till att vi behöver det är att appmanifestet ibland lagras i en EXE och Windows föredrar detta interna appmanifest som standard. Vi vill inte ignorera det interna appmanifestet helt om det finns, det vill säga om apputvecklaren har lagt till det eftersom det förutom DPI-skalning innehåller annan viktig information om appens sida-vid-sida-konfiguration och UAC-höjd.
- Starta Resource Hacker och öppna appens EXE i den som ser ovanligt liten ut på din högupplösta skärm.
- Programmets (EXE) manifestresurs lagras vanligtvis som resurstyp 24. Kontrollera om denna resurs 24 finns. Om det inte finns någon sådan resurs # 24 i EXE du öppnade, stäng sedan Resource Hacker och öppna filen du skapade i steg 1 i Anteckningar och kopiera och klistra in följande text i den och spara och stäng sedan textfilen:
Falsk
Hoppa nu direkt till steg 9 för fallet där det inte fanns någon resurs 24 i EXE du öppnade och du gjorde ovanstående steg.
- Om det i stället finns en resurs 24 i EXE du öppnade i Resource Hacker, expandera sedan noden som heter 24 -> 1 och klicka på objektet 1033 (det är 1033 för engelskspråkiga utgåvor). Högerklicka i den högra rutan och klicka på Välj alla. Högerklicka sedan på den markerade texten igen och klicka på Kopiera och stäng Resource Hacker. Gör inga ändringar i EXE: s interna manifest eftersom EXE kan vara digitalt signerad eller komprimerad. Vi vill inte ändra den ursprungliga EXE.
- Öppna Anteckningar, öppna filen du skapade i steg 1 i Anteckningar och klistra in det du kopierade från Resource Hacker i Anteckningar och spara den här filen från Arkiv-menyn.
- I den här filen, se om det finns ett avsnitt som har en dpiaware-flagga inställd på True (det betyder att appen påstår sig vara DPI-medveten om den ser liten ut på en hög DPI-skärm):
Sann
Om det finns, ändra det från True till False. Om inget sådant avsnitt relaterat till DPI-medvetenhet finns i appens manifestinformation lägger du till ovanstående textblock precis efter följande rad i manifestfilen:
- Ändra dpaware-flaggan från True till False och spara ändringarna i filen och stäng den.
- Kopiera filen till EXE-mappen. Om programmet till exempel är installerat i C: Program Files Contoso SearchTool.exe, kopierar du manifestet till katalogen C: Program Files Contoso.
- Nu måste vi justera Windows så att det föredrar externa manifestfiler framför interna inbäddade i EXE. Denna registerjustering måste göras * endast * för Windows 8.1 och Windows 10. Om du kör Windows 7 eller Windows 8.0 RTM, kan följande registerjustering orsaka oväntade biverkningar som att vissa systemfunktioner går sönder eller att appar kraschar.
- Öppna Registerredigerare (Regedit.exe) i Windows 8.1 eller Windows 10. Navigera till följande registerundernyckel:
HKEY_LOCAL_MACHINE> PROGRAMVARA> Microsoft> Windows> CurrentVersion> SideBySide
- Högerklicka, välj NYTT> DWORD-värde (32 bitar). Ge det ett namn: PreferExternalManifest och tryck sedan på RETUR.
- Högerklicka på PreferExternalManifest och klicka sedan på Ändra. Ange värdedata 1. Klicka på OK. Avsluta registerredigeraren.
- Starta nu om Windows och kör appen som du har lagt till detta manifest.
Appen ska skalas av Windows DPI-virtualiseringsfunktionen och ser inte längre ut för liten med oanvändbara kontroller. Texten kan se suddig ut men det beror på att apputvecklaren inte uppdaterade appen för hög DPI. Något suddig text är acceptabel än oläsligt litet användargränssnitt med små kontroller.
Om appen fortfarande utvecklas aktivt bör du kontakta utvecklaren så att han faktiskt får den att skala ordentligt vid hög DPI och inte bara markera EXE som hög DPI medveten. Om appen inte längre underhålls har du tur. Det här är lika bra som appen kommer att se ut (med lite suddig text). Appen ska dock kunna användas nu.