File tree Expand file tree Collapse file tree 3 files changed +41
-16
lines changed Expand file tree Collapse file tree 3 files changed +41
-16
lines changed Original file line number Diff line number Diff line change @@ -1240,28 +1240,13 @@ static VOID PhpUpdateProcessNodeDpiAwareness(
1240
1240
_Inout_ PPH_PROCESS_NODE ProcessNode
1241
1241
)
1242
1242
{
1243
- static PH_INITONCE initOnce = PH_INITONCE_INIT ;
1244
- static BOOL (WINAPI * getProcessDpiAwarenessInternal )(
1245
- _In_ HANDLE hprocess ,
1246
- _Out_ ULONG * value
1247
- );
1248
-
1249
- if (PhBeginInitOnce (& initOnce ))
1250
- {
1251
- getProcessDpiAwarenessInternal = PhGetDllProcedureAddress (L"user32.dll" , "GetProcessDpiAwarenessInternal" , 0 );
1252
- PhEndInitOnce (& initOnce );
1253
- }
1254
-
1255
- if (!getProcessDpiAwarenessInternal )
1256
- return ;
1257
-
1258
1243
if (!(ProcessNode -> ValidMask & PHPN_DPIAWARENESS ))
1259
1244
{
1260
1245
if (ProcessNode -> ProcessItem -> QueryHandle )
1261
1246
{
1262
1247
ULONG dpiAwareness ;
1263
1248
1264
- if (getProcessDpiAwarenessInternal (ProcessNode -> ProcessItem -> QueryHandle , & dpiAwareness ))
1249
+ if (PhGetProcessDpiAwareness (ProcessNode -> ProcessItem -> QueryHandle , & dpiAwareness ))
1265
1250
ProcessNode -> DpiAwareness = dpiAwareness + 1 ;
1266
1251
}
1267
1252
Original file line number Diff line number Diff line change @@ -1817,6 +1817,37 @@ BOOLEAN PhIsImmersiveProcess(
1817
1817
return !!IsImmersiveProcess_I (ProcessHandle );
1818
1818
}
1819
1819
1820
+ _Success_ (return )
1821
+ BOOLEAN PhGetProcessDpiAwareness (
1822
+ _In_ HANDLE ProcessHandle ,
1823
+ _Out_ PULONG ProcessDpiAwareness
1824
+ )
1825
+ {
1826
+ static PH_INITONCE initOnce = PH_INITONCE_INIT ;
1827
+ static BOOL (WINAPI * GetProcessDpiAwarenessInternal_I )(
1828
+ _In_ HANDLE hprocess ,
1829
+ _Out_ ULONG * value
1830
+ );
1831
+ ULONG dpiAwareness = 0 ;
1832
+
1833
+ if (PhBeginInitOnce (& initOnce ))
1834
+ {
1835
+ GetProcessDpiAwarenessInternal_I = PhGetDllProcedureAddress (L"user32.dll" , "GetProcessDpiAwarenessInternal" , 0 );
1836
+ PhEndInitOnce (& initOnce );
1837
+ }
1838
+
1839
+ if (!GetProcessDpiAwarenessInternal_I )
1840
+ return FALSE;
1841
+
1842
+ if (GetProcessDpiAwarenessInternal_I (ProcessHandle , & dpiAwareness ))
1843
+ {
1844
+ * ProcessDpiAwareness = dpiAwareness ;
1845
+ return TRUE;
1846
+ }
1847
+
1848
+ return FALSE;
1849
+ }
1850
+
1820
1851
// rev from ExtractIconExW
1821
1852
_Success_ (return )
1822
1853
BOOLEAN PhExtractIcon (
Original file line number Diff line number Diff line change @@ -967,6 +967,15 @@ PhIsImmersiveProcess(
967
967
_In_ HANDLE ProcessHandle
968
968
);
969
969
970
+ _Success_ (return )
971
+ PHLIBAPI
972
+ BOOLEAN
973
+ NTAPI
974
+ PhGetProcessDpiAwareness (
975
+ _In_ HANDLE ProcessHandle ,
976
+ _Out_ PULONG ProcessDpiAwareness
977
+ );
978
+
970
979
_Success_ (return )
971
980
PHLIBAPI
972
981
BOOLEAN
You can’t perform that action at this time.
0 commit comments