Не так давно приобрел ноутбук с большим разрешением экрана (Ultra HD 4K 3840×2160, если быть точнее) и столкнулся с проблемами масштабирования программ, как не странно разработчики не учитывают большие экраны, или не успевают за прогрессом железа, что конечно же минимум - странно)
От лирики - к делу!)
Во-первых, нужно в реестре создать ключ
Поиск regedit
- Код: Выделить всё · Развернуть
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest
Выкладываю пример конфигураций для 32 и 64 битных программ, помещать в папку с программой (рядом с exe файлом). В блокноте замените gisher.exe на имя exe программы, а также переименуйте файл имя_вашей_программы.ехе.manifest.
Для 32 битных программ
- Код: Выделить всё · Развернуть
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity processorArchitecture="x86" version="5.1.0.0" type="win32" name="gisher.exe"/>
<description>Gisher</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="asInvoker"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
</application>
</compatibility>
<asmv3:application xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<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>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="x86"/>
</dependentAssembly>
</dependency>
</assembly>
- Код: Выделить всё · Развернуть
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity processorArchitecture="amd64" version="5.1.0.0" type="win32" name="Gisher.exe"/>
<description>Gisher</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="asInvoker"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
</application>
</compatibility>
<asmv3:application xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<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>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="amd64"/>
</dependentAssembly>
</dependency>
</assembly>
На всякий прикрепляю файлы. Возникнут вопросы, задавайте)