Funzione SetProcessDpiAwareness (shellscalingapi.h)
Imposta il livello di consapevolezza DPI predefinito per il processo. Equivale a chiamare SetProcessDpiAwarenessContext con il valore di DPI_AWARENESS_CONTEXT corrispondente.
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
HRESULT SetProcessDpiAwareness(
[in] PROCESS_DPI_AWARENESS value
);
Parametri
[in] value
Valore di consapevolezza DPI da impostare. I valori possibili provengono dall'enumerazione PROCESS_DPI_AWARENESS .
Valore restituito
Questa funzione restituisce uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
La consapevolezza DPI per l'app è stata impostata correttamente. |
|
Il valore passato in non è valido. |
|
La consapevolezza DPI è già impostata, chiamando questa API in precedenza o tramite il manifesto dell'applicazione (.exe). |
Commenti
Le versioni precedenti di Windows hanno un solo valore di consapevolezza DPI per l'intera applicazione. Per queste applicazioni, la raccomandazione è stata quella di impostare il valore di consapevolezza DPI nel manifesto, come descritto in PROCESS_DPI_AWARENESS. In questa raccomandazione non è stato previsto l'uso di SetProcessDpiAwareness per aggiornare la consapevolezza DPI. In effetti, le chiamate future a questa API non riuscirebbero dopo che la consapevolezza DPI è stata impostata una volta. Ora che la consapevolezza DPI è associata a un thread anziché a un'applicazione, è possibile usare questo metodo per aggiornare la consapevolezza DPI. È tuttavia consigliabile usare SetThreadDpiAwarenessContext .
Per le applicazioni meno recenti, è consigliabile non usare SetProcessDpiAwareness per impostare la consapevolezza DPI per l'applicazione. È invece necessario dichiarare la consapevolezza DPI per l'applicazione nel manifesto dell'applicazione. Vedere PROCESS_DPI_AWARENESS per altre informazioni sui valori di consapevolezza DPI e su come impostarli nel manifesto.
Se il livello di consapevolezza DPI non è impostato, il valore predefinito è PROCESS_DPI_UNAWARE.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8.1 [solo app desktop] |
Server minimo supportato | Windows Server 2012 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shellscalingapi.h |
Libreria | Shcore.lib |
DLL | Shcore.dll |
Vedi anche
Impostazione della consapevolezza DPI predefinita per un processo