1
我的.exe文件具有硬编码图标,但在运行时它可以从文件加载另一个图标。它通过激活做从文件加载图标:在运行时更改任务栏图标如果exe文件位于Program Files文件中
Application->Icon->LoadFromFile(filename);
在C++ Builder,它归结为德尔福以下调用Windows API的
:
SendMessage(Handle, WM_SETICON, ICON_BIG, LPARAM(GetIconHandle));
SetClassLong(Handle, GCL_HICON, LPARAM(GetIconHandle));
如果我启动我的可执行文件从C:\,或任何用户目录,那么下面的图标都正确地更新:在主窗口的标题栏
- 角图标在任务栏上
的使用Alt-Tab屏幕
对于从C:\Program Files
下发布的程序任务栏图标是否有某种特殊保护?或者这里发生了什么?
我有cleared the icon cache它没有区别。我也试过用ICON_SMALL
加入一个额外的SendMessage
,但这也没有什么区别。