gpt4 book ai didi

c++ - DwmEnableComposition 未启用 Aero

转载 作者:搜寻专家 更新时间:2023-10-31 01:15:26 24 4
gpt4 key购买 nike

我正在尝试为我的应用程序启用 Aero(一个与浏览器一起运行“单一进程”的 Firefox 插件),但我没有这样做。操作系统为 Windows 7 64 位。

这是代码:

BOOL bEnabled = FALSE;
if(SUCCEEDED(DwmIsCompositionEnabled(&bEnabled)) && !bEnabled){
HRESULT hres = DwmEnableComposition(DWM_EC_ENABLECOMPOSITION);
}

DwmEnableComposition 应该启用组合但它没有,函数返回:

S_OK

任何帮助将不胜感激,谢谢!

最佳答案

您不能启用 DWM 组合;您只能请求将其禁用。当您不需要关闭它时,您可以调用

DwmEnableComposition(DWM_EC_ENABLECOMPOSITION);

来自 MSDN:

DWM composition will be automatically enabled when all processes that have disabled composition have called DwmEnableComposition to enable it or have been terminated.

您不必启用它,您只是宣布您不再需要禁用它。 (Microsoft 不允许您启用组合的原因是 you can't be trusted to not try to do it. )

你也应该在落后时放弃。再次来自 MSDN:

Note This function is deprecated as of Windows 8 Consumer Preview. DWM can no longer be programmatically disabled.

关于c++ - DwmEnableComposition 未启用 Aero,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10111948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com