ทุกวันนี้พีซีจำนวนมากมีการแสดงผลที่มีความละเอียดสูงมากแม้ว่าฟอร์มแฟคเตอร์ของพีซีจะมีขนาดเล็กลงเช่น Ultrabook หรือแท็บเล็ต หรือคุณอาจมีจอภาพเดสก์ท็อปที่มีความละเอียด 4K ด้วยความละเอียดดังกล่าว Windows จะเปิดการปรับขนาด DPI โดยอัตโนมัติเพื่อให้ทุกอย่างบนหน้าจอของคุณใหญ่ขึ้น อย่างไรก็ตามมีแอพของบุคคลที่สามบางตัวที่แสดงผลบนหน้าจอ DPI สูง ๆ ไม่ถูกต้อง มันดูเล็กเกินไปสำหรับความละเอียดหน้าจอ ให้เราดูวิธีแก้ไขหาก Windows 8.1 หรือ Windows 10 ปรับขนาดไม่ถูกต้อง
โดยปกติแอปดังกล่าวจะถูกเขียนขึ้นก่อนที่จะมีการแสดง DPI สูงและไม่ได้รับการอัปเดตอย่างเหมาะสมเพื่อรองรับ DPI ที่สูง มีขนาดเล็กเกินไปบนหน้าจอและไม่สามารถอ่านแบบอักษรได้และไม่ได้ปรับขนาดอย่างเหมาะสม บ่อยครั้งที่ปุ่มต่างๆถูกวางผิดตำแหน่งหรือเล็กเกินกว่าที่จะคลิกสำหรับแอพเก่าที่ยังไม่ได้รับการอัปเดตสำหรับการแสดงผล DPI โดยปกติ Windows จะปรับขนาดแอปทั้งหมดโดยอัตโนมัติโดยใช้การปรับขนาดรูปแบบ XP เช่นเดียวกับการจำลองเสมือน DPI สำหรับแอปเหล่านั้นที่ไม่ได้บอกให้ Windows ทราบว่าเป็น DPI อย่างไรก็ตามมีบางแอพที่โกหก Windows ว่ามี DPI สูงแม้ว่าจะไม่ใช่ก็ตามซึ่งเป็นสาเหตุที่ Windows ไม่ปรับขนาด แอพดังกล่าวแสดงผลบนความละเอียด Full HD หรือ 4K อย่างไม่เหมาะสม
ในการแก้ไขปัญหาสามารถทำได้โดยบังคับให้ Windows ปรับขนาดแอปโดยใช้ DPI virtualization อย่างไรก็ตามจากการทดสอบของฉันสามารถทำได้อย่างปลอดภัยบน Windows 8.1 และ Windows 10 เท่านั้นขั้นตอนนี้ยาวและซับซ้อนเล็กน้อยสำหรับผู้ใช้มือใหม่ แต่ไม่มี GUI ด่วนใน Windows เพื่อบังคับให้ DPI virtualization สำหรับแอปเฉพาะ การปรับแต่ง Registry ที่เกี่ยวข้องกับการปรับแต่งนี้ใน Windows 7 หรือ Windows 8.0 ทำให้เกิดพฤติกรรมแปลก ๆ และผลข้างเคียงเช่นไอคอนถาดระบบหายไปดังนั้นคุณต้องรับความเสี่ยงเองหากคุณใช้ระบบปฏิบัติการเหล่านี้ หากคุณใช้ Windows 8.1 หรือ Windows 10 ให้ทำตามคำแนะนำต่อไปนี้
การโฆษณา
- สร้างไฟล์ข้อความเปล่าจากเมนูใหม่โดยคลิกขวาที่ใดก็ได้เช่น บนเดสก์ท็อปหรือในโฟลเดอร์ ไฟล์ข้อความควรมีชื่อของโปรแกรม EXE ซึ่งแสดงผลเล็กเกินไปตามด้วยข้อความ '.manifest' ตัวอย่างเช่นหากชื่อโปรแกรมที่คุณใช้ซึ่งดูเล็กคือ SearchTool.exe ไฟล์ข้อความที่คุณสร้างควรมีชื่อว่า 'SearchTool.exe.manifest' หากคุณไม่ทราบชื่อ EXE ให้คลิกขวาที่แถบงานและเปิดตัวจัดการงานในขณะที่แอปนั้นกำลังทำงานอยู่ เลือกแอพแล้วคลิกขวาแล้วคลิกไปที่รายละเอียด บนแท็บรายละเอียดชื่อ EXE จะปรากฏขึ้น จากนั้นคุณสามารถสร้างไฟล์ข้อความด้วยชื่อที่เหมาะสม เช่น. Processname.exe.manifest
- ดาวน์โหลดและติดตั้งโปรแกรม Resource Hacker ฟรีจากที่นี่: http://www.angusj.com/resourcehacker/ . เป็นเครื่องมือแก้ไขทรัพยากร เหตุผลที่เราต้องการก็เพราะบางครั้งรายการแอพจะถูกเก็บไว้ใน EXE และ Windows จะชอบรายการแอพภายในนี้เป็นค่าเริ่มต้น เราไม่ต้องการเพิกเฉยต่อรายการแอปภายในอย่างสมบูรณ์หากมีอยู่นั่นคือหากนักพัฒนาแอปเพิ่มเนื่องจากนอกจากการปรับขนาด DPI แล้วยังมีข้อมูลสำคัญอื่น ๆ เกี่ยวกับการกำหนดค่าแอปแบบเคียงข้างกันและระดับความสูง UAC
- เริ่ม Resource Hacker และเปิด EXE ของแอพซึ่งดูเล็กผิดปกติบนหน้าจอความละเอียดสูงของคุณ
- โดยทั่วไปทรัพยากรรายการโปรแกรม (EXE) จะถูกจัดเก็บเป็นประเภททรัพยากร 24 ตรวจสอบว่าทรัพยากร 24 นี้มีอยู่หรือไม่ หากไม่มีทรัพยากรดังกล่าว # 24 อยู่ใน EXE ที่คุณเปิดให้ปิด Resource Hacker และเปิดไฟล์ที่คุณสร้างในขั้นตอนที่ 1 ใน Notepad แล้วคัดลอกและวางข้อความต่อไปนี้ภายในจากนั้นบันทึกและปิดไฟล์ข้อความ:
เท็จ
ตอนนี้ข้ามไปที่ขั้นตอนที่ 9 โดยตรงสำหรับกรณีที่ไม่มีทรัพยากร 24 ใน EXE ที่คุณเปิดและคุณทำตามขั้นตอนข้างต้น
- หากมีทรัพยากร 24 อยู่ใน EXE ที่คุณเปิดใน Resource Hacker ให้ขยายโหนดชื่อ 24 -> 1 และคลิกที่รายการ 1033 (เป็น 1033 สำหรับรุ่นภาษาอังกฤษ) คลิกขวาในบานหน้าต่างด้านขวาแล้วคลิกเลือกทั้งหมด จากนั้นคลิกขวาที่ข้อความที่เลือกอีกครั้งแล้วคลิกคัดลอกและปิด Resource Hacker อย่าทำการเปลี่ยนแปลงใด ๆ กับรายการภายในของ EXE เนื่องจาก EXE อาจมีการเซ็นชื่อแบบดิจิทัลหรือบีบอัด เราไม่ต้องการแก้ไข EXE เดิม
- เปิด Notepad เปิดไฟล์ที่คุณสร้างในขั้นตอนที่ 1 ใน Notepad และวางสิ่งที่คุณคัดลอกจาก Resource Hacker ลงใน Notepad และบันทึกไฟล์นี้จากเมนูไฟล์
- ในไฟล์นี้ให้ดูว่ามีส่วนที่ตั้งค่าสถานะ dpiaware เป็น True หรือไม่ (ซึ่งหมายความว่าแอปอ้างว่าเป็น DPI จะทราบว่ามีขนาดเล็กเมื่อแสดงผล DPI สูง):
จริง
หากมีอยู่ให้เปลี่ยนจาก True เป็น False หากไม่มีส่วนดังกล่าวที่เกี่ยวข้องกับการรับรู้ DPI อยู่ในข้อมูล Manifest ของแอปให้เพิ่มบล็อกข้อความด้านบนหลังบรรทัดต่อไปนี้ในไฟล์รายการ:
- เปลี่ยนแฟล็ก dpaware จาก True เป็น False และบันทึกการเปลี่ยนแปลงลงในไฟล์และปิด
- คัดลอกไฟล์ไปยังโฟลเดอร์ของ EXE ตัวอย่างเช่นหากติดตั้งโปรแกรมใน C: Program Files Contoso SearchTool.exe ให้คัดลอกรายการไปยังไดเร็กทอรี C: Program Files Contoso
- ตอนนี้เราต้องปรับแต่ง Windows เพื่อบอกให้ชอบไฟล์ manifest ภายนอกมากกว่าไฟล์ภายในที่ฝังอยู่ใน EXE การปรับแต่งรีจิสทรีนี้ต้องทำ * เท่านั้น * สำหรับ Windows 8.1 และ Windows 10 หากคุณใช้ Windows 7 หรือ Windows 8.0 RTM การปรับแต่ง Registry ต่อไปนี้อาจทำให้เกิดผลข้างเคียงที่ไม่คาดคิดเช่นการทำงานของระบบบางอย่างพังหรือแอปหยุดทำงาน
- เปิด Registry Editor (Regedit.exe) ใน Windows 8.1 หรือ Windows 10 ไปที่คีย์ย่อยของรีจิสทรีต่อไปนี้:
HKEY_LOCAL_MACHINE> ซอฟต์แวร์> Microsoft> Windows> CurrentVersion> SideBySide
- คลิกขวาเลือก NEW> DWORD (32 bit) Value ตั้งชื่อให้ว่า: PreferExternalManifest แล้วกด ENTER
- คลิกขวาที่ PreferExternalManifest และจากนั้นคลิก Modify ป้อน Value Data 1. คลิกตกลง ออกจาก Registry Editor
- ตอนนี้รีสตาร์ท Windows และเรียกใช้แอปที่คุณเพิ่มรายการนี้
แอปควรได้รับการปรับขนาดโดยคุณสมบัติการจำลองเสมือนของ Windows DPI และจะไม่ดูเล็กเกินไปอีกต่อไปด้วยการควบคุมที่ใช้ไม่ได้ ข้อความอาจดูไม่ชัด แต่นั่นเป็นเพราะนักพัฒนาแอปไม่ได้อัปเดตแอปให้มี DPI สูง ข้อความที่พร่ามัวเล็กน้อยนั้นสามารถยอมรับได้มากกว่าส่วนต่อประสานผู้ใช้ขนาดเล็กที่อ่านไม่ออกพร้อมการควบคุมขนาดเล็ก
หากแอปยังคงได้รับการพัฒนาอย่างต่อเนื่องคุณควรติดต่อผู้พัฒนาเพื่อให้เขาปรับขนาดได้อย่างเหมาะสมที่ DPI สูงและไม่ใช่แค่ทำเครื่องหมาย EXE ว่า DPI สูงเท่านั้น หากแอปไม่ได้รับการดูแลอีกต่อไปแสดงว่าคุณโชคไม่ดี นี่เป็นสิ่งที่ดีพอ ๆ กับที่แอพจะดู (มีข้อความเบลอเล็กน้อย) อย่างไรก็ตามแอปควรใช้งานได้แล้ว