Visual studio 2008 在XP中更改文件关联后如何刷新图标?
我曾尝试在XP中更改.htm文件的文件关联,下面是我如何做到的:Visual studio 2008 在XP中更改文件关联后如何刷新图标?,visual-studio-2008,winapi,visual-c++,windows-xp,windows-shell,Visual Studio 2008,Winapi,Visual C++,Windows Xp,Windows Shell,我曾尝试在XP中更改.htm文件的文件关联,下面是我如何做到的: 更改关联的注册表项值 调用SHChangeNotify(SHCNE\u assocchange,SHCNF\u IDLIST,0,0)刷新图标 完成这些操作后,我双击.htm文件,它将由我期望的浏览器打开。但桌面上的图标不会更改为新图标(例如,从IE改为Chrome)。 但是,如果重新启动explorer.exe,图标将更改为正确的图标 谁能告诉我在更改文件关联后如何刷新桌面上的图标 如果您有任何回复,我们将不胜感激,谢谢 尝试发
SHChangeNotify(SHCNE\u assocchange,SHCNF\u IDLIST,0,0)
刷新图标如果您有任何回复,我们将不胜感激,谢谢 尝试发送有关已更改环境的通知,这可能会解决以下问题:
DWORD result2 = 0;
LRESULT result = SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, 0,
(LPARAM)_T("Environment"), SMTO_ABORTIFHUNG, 5000, &result2);
尝试:
SHChangeNotify、SHCNE_GLOBALEVENTS、SHCNF_IDLIST或SHCNF_FLUSHNOWAIT
或者SHCNF_,0,0
用你的语言来改变或改变对我有用的东西
或改变
SHCNE_全球事件至SHCNE_关联变更
不可能,这是我在我的文件扩展名编辑器中使用的,没有人会遇到问题。什么操作系统?对不起,Gunner,你的解决方案有效,我添加的是regsity值,这会让事情看起来一团糟。我删除了一些无用的值,现在可以正常工作了。