DPI_AWARENESS enumeración (windef.h)

Identifica la configuración de puntos por pulgada (ppp) de un subproceso, proceso o ventana.

Syntax

typedef enum DPI_AWARENESS {
  DPI_AWARENESS_INVALID = -1,
  DPI_AWARENESS_UNAWARE = 0,
  DPI_AWARENESS_SYSTEM_AWARE = 1,
  DPI_AWARENESS_PER_MONITOR_AWARE = 2
} ;

Constantes

 
DPI_AWARENESS_INVALID
Valor: -1
Reconocimiento de PPP no válido. Se trata de un valor de reconocimiento de PPP no válido.
DPI_AWARENESS_UNAWARE
Valor: 0
Ppp no es consciente. Este proceso no se escala para los cambios de PPP y siempre se supone que tiene un factor de escala del 100 % (96 PPP). El sistema escalará automáticamente en cualquier otra configuración de PPP.
DPI_AWARENESS_SYSTEM_AWARE
Valor: 1
Reconocimiento de PPP del sistema. Este proceso no se escala para los cambios de PPP. Consultará el VALOR de PPP una vez y usará ese valor durante la vigencia del proceso. Si cambia el valor de PPP, el proceso no se ajustará al nuevo valor de PPP. El sistema la escalará o reducirá verticalmente automáticamente cuando cambie el valor del sistema por ppp.
DPI_AWARENESS_PER_MONITOR_AWARE
Valor: 2
Reconocimiento de PPP por monitor. Este proceso comprueba el valor de PPP cuando se crea y ajusta el factor de escala cada vez que cambia el valor de PPP. El sistema no escala automáticamente estos procesos.

Comentarios

En versiones anteriores de Windows, los valores de PPP solo se establecieron una vez para toda una aplicación. Para esas aplicaciones, el tipo de PROCESS_DPI_AWARENESS determinó el tipo de reconocimiento de PPP para toda la aplicación. Actualmente, el reconocimiento de PPP se define en un nivel de proceso, ventana o subproceso individual y se indica mediante el tipo DPI_AWARENESS . Aunque el foco ha pasado de un nivel de proceso a un nivel de subproceso, los diferentes tipos de reconocimiento de PPP son los mismos: no conscientes del sistema y según el monitor. Para obtener descripciones detalladas y algunos ejemplos de los diferentes tipos de PPP, consulte PROCESS_DPI_AWARENESS.

La recomendación anterior era definir el nivel de reconocimiento de PPP en el manifiesto de aplicación mediante el valor de pppAware como se explica en PROCESS_DPI_AWARENESS. Ahora que el reconocimiento de PPP está vinculado a subprocesos y ventanas en lugar de a toda una aplicación, se agrega una nueva configuración de ventanas al manifiesto de la aplicación. Esta configuración es pppAwareness y invalidará cualquier valor de pppAware si ambos están presentes en el manifiesto. Aunque todavía se recomienda usar el manifiesto, ahora puedes cambiar el reconocimiento de PPP mientras se ejecuta la aplicación mediante SetThreadDpiAwarenessContext.

Es importante tener en cuenta que si la aplicación tiene una ventana de DPI_AWARENESS_PER_MONITOR_AWARE , usted es responsable de realizar un seguimiento del PPP respondiendo a WM_DPICHANGED mensajes.

Ejemplos

Este fragmento de código muestra cómo establecer un valor de DPI_AWARENESS_SYSTEM_AWARE en el manifiesto de aplicación.

<dpiAwareness>System</dpiAwareness>

Este fragmento de código muestra cómo establecer un valor de DPI_AWARENESS_PER_MONITOR_AWARE en el manifiesto de aplicación.

<dpiAwareness>PerMonitor</dpiAwareness>

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10 [solo aplicaciones de escritorio]
Servidor mínimo compatible No se admite ninguno
Encabezado windef.h

Consulte también

PROCESS_DPI_AWARENESS

SetThreadDpiAwarenessContext