Funzione SetProcessDpiAwarenessContext (winuser.h)
Imposta il processo corrente su un contesto di consapevolezza dei punti per pollice (dpi) specificato. I contesti di consapevolezza DPI provengono dal valore DPI_AWARENESS_CONTEXT .
Nota
È consigliabile impostare la consapevolezza DPI predefinita del processo tramite manifesto dell'applicazione, non una chiamata API. Per altre informazioni, vedere Impostazione della consapevolezza DPI predefinita per un processo . L'impostazione della consapevolezza DPI predefinita del processo tramite chiamata API può causare un comportamento imprevisto dell'applicazione.
Sintassi
BOOL SetProcessDpiAwarenessContext(
[in] DPI_AWARENESS_CONTEXT value
);
Parametri
[in] value
Handle DPI_AWARENESS_CONTEXT da impostare.
Valore restituito
Questa funzione restituisce TRUE se l'operazione ha avuto esito positivo e FALSE in caso contrario. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Gli errori possibili sono ERROR_INVALID_PARAMETER per un input non valido e ERROR_ACCESS_DENIED se la modalità di consapevolezza api predefinita per il processo è già stata impostata (tramite una chiamata API precedente o all'interno del manifesto dell'applicazione).
Commenti
Questa API è una versione più avanzata dell'API SetProcessDpiAwareness esistente in precedenza, consentendo l'impostazione predefinita del processo ai valori DPI_AWARENESS_CONTEXT con granularità fine. Ciò consente di impostare a livello di codice Per Monitor v2 come valore predefinito del processo, che non è possibile con l'API precedente.
Questo metodo imposta il DPI_AWARENESS_CONTEXT predefinito per tutti i thread all'interno di un'applicazione. I singoli thread possono avere la consapevolezza dpi cambiata rispetto all'impostazione predefinita con il metodo SetThreadDpiAwarenessContext .
Prima di chiamare questa API, è necessario chiamare tutte le API che dipendono dalla consapevolezza DPI , inclusa prima di creare qualsiasi interfaccia utente nel processo. Una volta impostata la consapevolezza dell'API per un'app, le chiamate future a questa API avranno esito negativo. Ciò è vero indipendentemente dal fatto che si imposta la consapevolezza DPI nel manifesto o usando questa API.
Se il livello di consapevolezza DPI non è impostato, il valore predefinito è DPI_AWARENESS_CONTEXT_UNAWARE.
Requisiti
Client minimo supportato | Windows 10 versione 1703 [solo app desktop] |
Server minimo supportato | Windows Server 2016 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | Winuser |
Libreria | User32.lib |
DLL | User32.dll |
Vedi anche
Impostazione della consapevolezza DPI predefinita per un processo