vb6的windows 7任务栏中未反映新的exe图标

vb6的windows 7任务栏中未反映新的exe图标,vb6,exe,taskbar,Vb6,Exe,Taskbar,我为我的exe更改了一个新图标的资源文件,并为vb6项目生成了exe。但是,exe图标已更改,但windows 7任务栏仍显示旧图标。 如果我在项目目录以外的其他位置生成exe,则其工作正常。有人能帮你解决这个问题吗?你需要告诉Windows你更新了图标,这样它才能更新缓存 如果您使用的是VB6,请使用以下工具: 创建一个新的EXE项目(将其命名为“ForceIconsRefresh”或类似名称) 在项目属性中,将启动对象更改为“Sub-Main” 添加新模块,删除默认表单对象 在模块中添加以

我为我的exe更改了一个新图标的资源文件,并为vb6项目生成了exe。但是,exe图标已更改,但windows 7任务栏仍显示旧图标。
如果我在项目目录以外的其他位置生成exe,则其工作正常。有人能帮你解决这个问题吗?

你需要告诉Windows你更新了图标,这样它才能更新缓存

如果您使用的是VB6,请使用以下工具:

  • 创建一个新的EXE项目(将其命名为“ForceIconsRefresh”或类似名称)
  • 在项目属性中,将启动对象更改为“Sub-Main”
  • 添加新模块,删除默认表单对象
  • 在模块中添加以下内容:

  • 编撰
  • 在生成带有更新图标的EXE后执行

这发生在我身上,我认为这是Windows7的一个缺陷。
Option Explicit

Private Declare Function SHChangeNotify Lib "Shell32.dll" (ByVal wEventID As Long, ByVal uFlags As Long, ByVal dwItem1 As Long, ByVal dwItem2 As Long) As Long
Private Const SHCNE_ASSOCCHANGED As Long = &H8000000
Private Const SHCNF_FLUSHNOWAIT As Long = &H2000

Sub Main()
    Call SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_FLUSHNOWAIT, 0, 0)
End Sub