以编程方式刷新IconCache.db [英] Refresh IconCache.db programmatically
本文介绍了以编程方式刷新IconCache.db的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个固定了firefox.exe的按钮.我通过注册表更改了固定图标,将路径设置为url:
I have a button for firefox.exe pinned. I changed the pinned icon via registry I set the path to a url:
- 我将
firefox.exe
文件夹添加到 HKEY_LOCAL_MACHINE :HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Applications\
并将其值设置为C:\Users\myUsername\Downloads\addon.ico
- 我将
firefox.exe
文件夹添加到 HKEY_CURRENT_USER :HKEY_CURRENT_USER\SOFTWARE\Classes\Applications\
并将其值设置为C:\Users\myUsername\Downloads\addon.ico
- I added
firefox.exe
folder to HKEY_LOCAL_MACHINE:HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Applications\
and set it's value toC:\Users\myUsername\Downloads\addon.ico
- I added
firefox.exe
folder to HKEY_CURRENT_USER:HKEY_CURRENT_USER\SOFTWARE\Classes\Applications\
and set it's value toC:\Users\myUsername\Downloads\addon.ico
该路径上的图标肯定存在.
The icon at that path definitely exists.
但是即使我的图标被固定了,它也不会出现.我猜我必须刷新IconCache.db
,您能推荐一种使用Win API做到这一点的方法吗?不希望重新启动计算机或程序,或者不注销计算机.
However even though my icon is pinned for it doesn't take. I'm guessing I have to refresh the IconCache.db
can you please recommend a way to do this with win api? Without restarting computer or program or logging off computer please is my hope.
推荐答案
尝试一下:
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil)
或者您可以尝试以下方法:
Or you could try this:
SHChangeNotify(SHCNE_UPDATEITEM, SHCNF_PATH, 'YourPinnedFileName', nil)
这篇关于以编程方式刷新IconCache.db的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文