Windows回收站ICON通知

时间:2013-09-13 16:10:27

标签: windows winapi visual-c++

我需要在以编程方式删除其内容后通知Windows资源管理器刷新其回收站ICON,以便它显示空的回收站图标。我如何使用vc ++。

2 个答案:

答案 0 :(得分:3)

让我猜一下:您是通过手动删除实际回收站文件夹中的文件来清空它的?

您是否尝试过SHEmptyRecycleBin

这是Windows资源管理器用于清空垃圾箱的调用,它应该处理图标;)

答案 1 :(得分:3)

Shell32.dll导出一个名为SHUpdateRecycleBinIcon的函数,它正如它所说的那样。此功能未记录,但您可以这样称呼它:

typedef void (WINAPI* PFNSHUPDATERECYCLEBINICON)();
PFNSHUPDATERECYCLEBINICON pfnFunc = (PFNSHUPDATERECYCLEBINICON)GetProcAddress(GetModuleHandle(L"shell32.dll"), "SHUpdateRecycleBinIcon");
if (pfnFunc) pfnFunc();

我注意到其他评论,但是自己从回收站中删除内容可能不是最佳做法(当然也没有使用未记录的函数)。