Computer >> Máy Tính >  >> Hệ thống >> Windows 10

Vấn đề về tỷ lệ RDP trên màn hình DPI cao trong Windows 10

Người dùng Windows 10 thường phàn nàn rằng trên màn hình có độ phân giải cao (4k HiDPI), văn bản, biểu tượng và các yếu tố khác của các ứng dụng cũ (không tương thích với chế độ màn hình High-DPI) trở nên quá nhỏ, mờ và không thể đọc được.

Sự cố này đã được khắc phục một phần trong Bản cập nhật Windows 10 Fall Creators (1703) do hỗ trợ thêm tính năng chia tỷ lệ DPI động, tuy nhiên, khi bạn kết nối với màn hình của một máy tính từ xa bằng RDP, sự cố chia tỷ lệ vẫn còn (chia tỷ lệ bình thường cho mstsc Ứng dụng khách .exe vẫn không được hỗ trợ).

Trong Windows 8.1 và Windows 10, DPI cục bộ được gửi đến kết nối RDP, do đó, các biểu tượng và văn bản trong cửa sổ này trở nên rất nhỏ và khó đọc.

Vấn đề về tỷ lệ RDP trên màn hình DPI cao trong Windows 10

Giải pháp thay thế là bạn có thể sử dụng ứng dụng RDCMan (của Microsoft) cho các kết nối RDP, nhưng có một giải pháp cho mstsc.exe gốc khách hàng.

Vấn đề là bạn có thể tạo một tệp kê khai riêng (.manifest) cho các ứng dụng cụ thể.

Để làm cho tính năng này hoạt động và để Windows lấy dữ liệu từ tệp kê khai này trước tiên khi khởi động ứng dụng, hãy tạo tham số DWORD (32-bit) với tên PreferExternalManifest và giá trị thập phân 1 trong khóa đăng ký sau: HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ SideBySide .

Vấn đề về tỷ lệ RDP trên màn hình DPI cao trong Windows 10

Bạn có thể tạo tham số đăng ký này bằng lệnh:

REG ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide" /v PreferExternalManifest /t REG_DWORD /d 1 /f

Sau đó, trong thư mục% SystemRoot% \ System32 \ (nó chứa tệp mstsc.exe), bạn cần tạo mstsc.exe.manifest tệp có mã sau:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0" processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*">
</assemblyIdentity>
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.VC90.CRT"
version="9.0.21022.8"
processorArchitecture="amd64"
publicKeyToken="1fc8b3b9a1e18e3b">
</assemblyIdentity>
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="asInvoker"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<asmv3:application>
<asmv3:windowsSettings xmlns="https://schemas.microsoft.com/SMI/2005/WindowsSettings">
<ms_windowsSettings:dpiAware xmlns:ms_windowsSettings= "https://schemas.microsoft.com/SMI/2005/WindowsSettings" >false</ms_windowsSettings:dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
</assembly>

Vấn đề về tỷ lệ RDP trên màn hình DPI cao trong Windows 10

Lưu ý . Bạn có thể tự mình lấy các giá trị này cho tệp kê khai bằng Resource Hacker. Để làm điều đó, hãy mở mstsc.exe bằng Resource Hacker. Sao chép dữ liệu từ phần Manifest-> 1:1033 và thêm phần bằng dpiAware cờ và giá trị false .

Vấn đề về tỷ lệ RDP trên màn hình DPI cao trong Windows 10 Khởi động lại Windows và cố gắng kết nối với máy tính để bàn hoặc máy chủ từ xa bằng mstsc.exe. Như bạn có thể thấy, nội dung của cửa sổ RDP hiện được hiển thị bình thường.

Theo cách tương tự, bạn có thể tạo tệp kê khai cho bất kỳ ứng dụng nào không hỗ trợ tỷ lệ gốc.