你没看错,Windows 10 是有 Aero 的。
此文是首发在我的旧博客上的。
0x0 前言
微软在 Windows 8 中去掉了 Aero。不过在 Windows 10 中又加了回来,开始菜单和控制中心的背景就是这样的效果。
不过实际上让我研究这个 API 是因为 AMD Radeon Settings 有 Aero 效果。
如图,不过没有对比的情况下不容易看出
0x1 代码
实现这个效果要使用 SetWindowCompositionAttribute
这个未公开 API,这个 API 的定义是在 这里 查到的。
除此之外,我们还需要知道相关的结构体才能使用,结构体的定义是从微软提供的 PDB 文件中获得的。
代码较多,我放到了 Github Gist 。
你还可以试着改一下参数,也许会有更好的效果。
使用未公开 API 意味着失去了向后兼容性。所以建议先检查 Windows 版本再使用。
0x2 效果
建议配合无边框窗口食用,有边框窗口会多出一小块模糊的区域 (如下图)。