我知道IShellFolderView
从 Windows 7 开始,Windows Shell 不再支持该接口。但是我仍然对该接口公开的方法(即RemoveObject
和)感兴趣。AddObject
以下调用不再编译
pShellView->QueryInterface(IID_IShellFolderView, (LPVOID*)&pShellFolderView)
因为 riid:IID_IShellFolderView
不再存在于shlobj.h
(最新的 sdk)中。我需要访问一些允许我在文件夹视图中删除/添加或(隐藏/显示)文件夹对象的方法。我读了一篇文章,建议进行以下调用:
SHShellFolderView_Message(?m_hwnd_cabinet?, SFVM_REMOVEOBJECT, (LPARAM)pidl);
但是它似乎没有产生任何效果。我怀疑可能提供的 hwnd(即 m_hwnd_cabinet)不是正确的。谁能告诉我正确的手柄是什么,我怎样才能生产它?还是有其他方法?
谢谢!
我正在尝试调整这个项目https://github.com/stefankueng/tools/blob/main/StExBar/src/Filter.cpp#L44但它使用 IID_IShellFolderView。