我试图找出一个窗口是否属于当前的虚拟桌面。
我从winapi找到了VirtualDesktopManager类,但是即使根据here,它应该位于“shobjidl.h” header 中,当我编译代码时也会引发此错误:
我的代码的重要部分:
#include <shobjidl.h>
...
BOOL is_on_current_desktop = FALSE;
VirtualDesktopManager g_pvdm;
g_pvdm.IsWindowOnCurrentVirtualDesktop(hwnd, &is_on_current_desktop); // hwnd is a window handle acquired previously
g_pvdm.Release();
我该如何进行这项工作?
最佳答案
显然,此接口(interface)未包含在我正在使用的mingw64的“shobjidl.h” header 中,在Visual Studio中运行它会找到它。因此,问题出在标题中。