是否有一种从桌面删除快捷方式的特殊方法?

时间:2012-12-15 06:01:35

标签: c++ windows winapi desktop-application shortcut

我使用IShellLink界面在桌面上创建了一个快捷方式(.lnk)文件,类似于this page底部描述的代码。

所以我的假设是,为了删除这个快捷方式,我可以简单地在.lnk文件上调用DeleteFile,但显然这还不够......如果我这样做,我会得到一个看起来很快的快捷方式文件像这样:

enter image description here

但有趣的是,如果我浏览桌面文件夹中的文件,比如使用Windows资源管理器,那么.lnk文件实际上并不存在。我看到的是桌面GUI界面上的一些工件。

知道如何删除快捷方式(微软想要它的方式吗?)

1 个答案:

答案 0 :(得分:2)

好的,根据上面的建议,这里是需要在之后调用以刷新shell的API:

SHChangeNotify(SHCNE_DELETE, SHCNF_PATH | SHCNF_FLUSHNOWAIT, pDeletedFilePath, NULL);
相关问题