Funzione GetDpiForMonitor (shellscalingapi.h)
Esegue una query sui punti per pollice (dpi) di uno schermo.
Sintassi
HRESULT GetDpiForMonitor(
[in] HMONITOR hmonitor,
[in] MONITOR_DPI_TYPE dpiType,
[out] UINT *dpiX,
[out] UINT *dpiY
);
Parametri
[in] hmonitor
Handle del monitoraggio sottoposto a query.
[in] dpiType
Tipo di DPI su cui viene eseguito la query. I valori possibili provengono dall'enumerazione MONITOR_DPI_TYPE .
[out] dpiX
Valore del valore DPI lungo l'asse X. Questo valore fa sempre riferimento al bordo orizzontale, anche quando lo schermo viene ruotato.
[out] dpiY
Valore del valore DPI lungo l'asse Y. Questo valore fa sempre riferimento al bordo verticale, anche quando lo schermo viene ruotato.
Valore restituito
Questa funzione restituisce uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
La funzione restituisce correttamente i valori DPI X e Y per il monitoraggio specificato. |
|
L'handle, il tipo DPI o i puntatori passati non sono validi. |
Commenti
Questa API non riconosce i valori DPI e non deve essere usata se il thread chiamante è compatibile con DPI per monitor. Per la versione compatibile con DPI di questa API, vedere GetDpiForWindow.
Quando si chiama GetDpiForMonitor, si riceveranno valori DPI diversi a seconda della consapevolezza DPI dell'applicazione chiamante. La consapevolezza DPI è una proprietà a livello di applicazione in genere definita nel manifesto dell'applicazione. Per altre informazioni sui valori di consapevolezza DPI, vedere PROCESS_DPI_AWARENESS. La tabella seguente indica come i risultati differiscono in base al valore PROCESS_DPI_AWARENESS dell'applicazione.
PROCESS_DPI_UNAWARE | 96 perché l'app non è a conoscenza di altri fattori di scala. |
PROCESS_SYSTEM_DPI_AWARE | Valore impostato sul valore DPI di sistema perché l'app presuppone che tutte le applicazioni usino la dpi di sistema. |
PROCESS_PER_MONITOR_DPI_AWARE | Valore DPI effettivo impostato dall'utente per tale visualizzazione. |
I valori di *dpiX e *dpiY sono identici. È sufficiente registrare uno dei valori per determinare il VALORE DPI e rispondere in modo appropriato.
Quando MONITOR_DPI_TYPE è MDT_ANGULAR_DPI o MDT_RAW_DPI, il valore DPI restituito non include alcuna modifica apportata all'utente al valore DPI usando il controllo dispositivo di scorrimento di override del ridimensionamento del desktop in Pannello di controllo.
Per altre informazioni sulle impostazioni DPI in Pannello di controllo, vedere il white paper Scrittura di applicazioni desktop DPI-Aware in Windows 8.1 Preview.
Requisiti
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 |