Solución rápida: Abre las propiedades del .exe de la aplicación, ve a Compatibilidad → Cambiar la configuración de PPP alta, marca Anular el comportamiento de escalado de PPP alto y establece el escalado en Sistema (mejorado) — esto anula la configuración global de Pantalla para esa aplicación en concreto.
Configuraste Windows 11 al 150 % de escalado para que el texto de tu monitor 4K sea legible, pero una aplicación específica —normalmente una herramienta Win32 heredada o una app antigua de Java/Qt— se ve borrosa, demasiado grande o con botones cortados. El resto del sistema se ve bien; esta aplicación necesita una configuración de PPP diferente. Windows 11 admite anulaciones de PPP por aplicación desde Creators Update, pero los controles están ocultos.
Afecta a: Windows 11 en pantallas de PPP alto (4K, 5K o 2K con escalado del 125–200 %).
Tiempo de solución: ~3 minutos por aplicación.
Qué causa esto
Windows indica a cada aplicación, al iniciarse, a qué PPP debe renderizar. Las aplicaciones modernas responden con un escalado vectorial perfecto (reconocimiento PerMonitorV2). Las aplicaciones más antiguas ignoran la solicitud y renderizan a 96 PPP —lo que Windows luego escala como mapa de bits, produciendo desenfoque—, o aceptan el PPP pero diseñan su interfaz asumiendo 96 PPP, lo que genera fuentes demasiado grandes en botones pequeños.
Una anulación por aplicación indica a Windows que deje que la aplicación gestione el PPP por sí misma (la opción Aplicación), que Windows la escale como un mapa de bits limpio (Sistema), o que Windows la escale con mayor nitidez de texto GDI para controles Win32 heredados (Sistema (mejorado)).
Método 1: Establecer el PPP por aplicación desde la pestaña Compatibilidad del ejecutable
La ruta estándar. Funciona para cualquier .exe que puedas localizar en el disco.
- Haz clic derecho en el acceso directo de la aplicación en el escritorio y elige Abrir ubicación del archivo. (Para los accesos directos del menú Inicio, esto te lleva al acceso directo; haz clic derecho en el acceso directo y elige Abrir ubicación del archivo de nuevo para llegar al .exe real).
- Haz clic derecho en el archivo .exe y elige Propiedades → Compatibilidad.
- Haz clic en Cambiar la configuración de PPP alta.
- Marca Anular el comportamiento de escalado de PPP alto. Escalado realizado por: y elige una opción:
- Aplicación — para aplicaciones que se escalan a sí mismas pero entran en conflicto con Windows.
- Sistema — para aplicaciones heredadas. Produce un escalado limpio, con un ligero desenfoque en el texto.
- Sistema (mejorado) — para aplicaciones heredadas solo GDI. Texto más nítido, pero rompe algunos controles personalizados.
- Haz clic en Aceptar dos veces. Cierra la aplicación por completo y vuelve a iniciarla.
Si Sistema (mejorado) hace que la aplicación se vea bien pero un cuadro de diálogo concreto aparece mal, cambia a Sistema. La disyuntiva es nitidez del texto frente a fidelidad del diseño de los controles.
Método 2: Forzar el reconocimiento PerMonitorV2 con un manifiesto
Para aplicaciones que se ven bien en tu monitor principal pero se rompen en cuanto las arrastras a un monitor secundario con PPP diferente, necesitas el comportamiento PerMonitorV2. La pestaña Compatibilidad no llega a esto: necesitas un archivo de manifiesto externo.
- Abre un editor de texto como Administrador (Bloc de notas → Ejecutar como administrador).
- Crea un archivo nuevo llamado
YourAppName.exe.manifesten la misma carpeta que el .exe. - Pega este contenido (reemplaza el nombre del ensamblado por el nombre del archivo .exe sin extensión):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <application xmlns="urn:schemas-microsoft-com:asm.v3"> <windowsSettings> <dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">permonitorv2,permonitor</dpiAwareness> </windowsSettings> </application> </assembly> - Abre el Editor del Registro (
regedit) y navega aHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide. - Crea un nuevo DWORD llamado
PreferExternalManifesty establece su valor en 1. - Reinicia la aplicación. Windows ahora lee el manifiesto externo antes de comprobar el integrado y aplica el reconocimiento PerMonitorV2.
Esta es la solución más limpia para aplicaciones que se ven bien en la pantalla 4K integrada del portátil pero se vuelven borrosas al conectarlo a un monitor externo 1080p.
Método 3: Usar una escala fija mediante la anulación de PPP heredada (Registro)
Para aplicaciones que las opciones de la pestaña Compatibilidad no solucionan —normalmente aplicaciones MFC o Delphi muy antiguas— puedes fijar una escala concreta a través del Registro. Esto fuerza a Windows a renderizar la aplicación a un PPP específico independientemente del monitor.
- Abre el Editor del Registro y navega a
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Crea la clave Layers si no existe. - Crea un nuevo Valor de cadena. Establece el nombre con la ruta completa del .exe de la aplicación (por ejemplo,
C:\Program Files (x86)\OldApp\app.exe). - Establece los datos del valor según lo que quieras:
~ HIGHDPIAWARE— permite que la aplicación gestione el PPP por sí misma.~ DPIUNAWARE— fuerza la renderización a 96 PPP, Windows escala como mapa de bits.~ GDIDPISCALING DPIUNAWARE— escalado GDI heredado, equivalente a Sistema (mejorado).
- Cierra el Editor del Registro. Reinicia la aplicación.
Este es el último recurso porque el cambio en el Registro se aplica por usuario y no te acompaña en la itinerancia. Si la aplicación se inicia con otra cuenta o mediante una tarea programada, la anulación no se aplicará.
Cómo verificar que la solución funcionó
- Inicia la aplicación y confirma que los elementos de la interfaz (botones, cuadros de diálogo, menús) aparecen al mismo tamaño físico que el resto de Windows.
- Arrastra la aplicación a un segundo monitor con PPP diferente. El texto debería volver a renderizarse con nitidez en uno o dos segundos; no debería permanecer borroso.
- Ejecuta Administrador de tareas → Detalles, haz clic derecho en cualquier encabezado de columna, elige Seleccionar columnas y añade Reconocimiento de PPP. La aplicación ahora debería mostrar Por monitor (V2) o Sistema según el método que hayas usado.
Si nada de esto funciona
Si los tres métodos fallan, es probable que la aplicación esté vinculada a un framework extremadamente antiguo (de la era anterior a Windows Vista) o que use un kit de ventanas no estándar. Las dos opciones restantes son: (1) ejecutar la aplicación dentro de un Windows Sandbox o una cuenta de usuario dedicada con el escalado global establecido al 100 % (la aplicación se verá diminuta pero nítida a resolución nativa), o (2) comprobar si existe una versión más reciente de la aplicación con compatibilidad adecuada con PerMonitorV2; muchas aplicaciones pequeñas de ISV publicaron una versión compatible con PPP entre 2019 y 2023. Para aplicaciones comerciales que aún están en desarrollo, informa de un error al proveedor; para software abandonado, tu única vía es la virtualización con escalado al 100 %.
Conclusión: Las anulaciones de PPP por aplicación en Windows 11 se aplican en tres niveles: opciones de la pestaña Compatibilidad para la mayoría de los casos, manifiestos externos para casos límite con varios monitores y anulaciones del Registro para el resto.