Condividi tramite


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

DPI_AWARENESS_CONTEXT

SetThreadDpiAwarenessContext

Impostazione della consapevolezza DPI predefinita per un processo