在Windows 8上声明每个窗口的高DPI感知
我正在开发在Cubase等主机中运行的音频插件,我希望增加高DPI支持.这是有问题的,因为我所知道的所有主机应用程序都声明自己具有非高DPI感知能力,因此所有窗口都由DWM自动缩放.我正在寻找一种方法来关闭插件窗口的DWM DPI缩放,即使主机本身不支持DPI(因此它对所有其他窗口使用DWM DPI缩放).有谁知道这是否可行?
对于使用大量插件的应用程序,例如音频主机,这是一个非常现实的问题,因为它们不能继续并声明自己是高DPI意识:这会破坏所有现有的插件.因此,除非Windows为此提供解决方案,否则我们总是停留在96 dpi的土地上.基本上我认为我们需要一个比设置每个进程更精细的解决方案,因此主机和插件可以单独声明其感知级别. 如果目前无法完成此操作,是否可以联系Microsoft工程师以便将其添加到Windows的未来版本中? 解决方法
自Windows 10周年更新以来,每个窗口现在可以实现DPI感知.
新的API SetThreadDpiAwarenessContext()可用于设置每个窗口和每个线程的DPI感知.这完成如下. >线程现在可以动态更改其DPI意识. 阅读以下参考资料. > https://msdn.microsoft.com/en-us/library/windows/desktop/mt744321(v=vs.85).aspx (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 我们可以在Microsoft Bot Framework(.NET / C#)中的Web Cha
- windows-8 – 在Windows 8 Metro App中加载自定义字体
- 在MS-DOS中使用所有RAM内存
- windows – 批量循环使用预定义列表或扩展集的所有文件,并忽
- windows – 在安装之前检测MSI是否需要重新启动
- windows-server-2012 – 如何确定SMB客户端是否已从我的Win
- R中的主/从多核处理
- mvc partialView+kendo window
- windows-server-2008 – Windows Server 2008评估还剩多少时
- Windows – Qmake中win64配置的标识符