问题描述
我想刷新在 Windows 上将鼠标悬停在任务栏图标上时(或 Alt+Tabbing 时)显示的 aero 预览。
我发现一个名为 DwmInvalidateIconicBitmaps
的函数看起来很有前途,但是当我使用它时:
[DllImport("dwmapi.dll")]
static extern int DwmInvalidateIconicBitmaps(IntPtr hwnd);
...
int res = DwmInvalidateIconicBitmaps(MyWindowHandle);
res
设置为 -2,147,024,809
。当我查看十六进制时,它显示为 FFFF FFFF 8007 0057
,根据 this site,它似乎对应于 E_INVALIDARG
。
然而,我的窗口句柄有效并且在其他地方成功使用。我遇到的另一个站点提到无法加载 DLL 时可能会引发此错误。这可能是问题吗?
我也没有看到 pinvoke site 中提到的这个函数,尽管我确实看到了其他 DWM 函数,这很奇怪。
Windows 10 / .NET 核心