当前位置:首页 > 技术心得 > 正文内容

如何给程序添加超大图标(EXE大尺寸图标)

xjtudll4年前 (2022-10-01)技术心得4360

要点:

1、制作多分辨率ICON文件

2、清空图标缓存,使图标文件生效

 

自己写的程序,如果更换了图标,编译出来,超大图标显示就会发现图标并没有跟着放大。

那么问题来了,就换个图标效果就不同了,很明显时图标有问题。

用eXeScope打开vs2013编译出来的MFC对话框程序可以看到如下图:

20170308111423189

这不止一个图标,而我们替换图标之后,编译,打开发现就只有一个图标,因此可以判断的确是ico图标的问题。

在qq群里问了下其他的朋友,有朋友提示ico图标文件可以包含很多组图标,可以是一个集合。

知道这一点很重要,那么只需要重新制作一个ico图标即可。

下载安装IconWorkshop软件

打开一张图片然后点击这里,如下图:

20170308112846977

然后如下设置

20170308112932658

 

设置好之后,点击ok,然后Ctrl+S保存即可,这样ico图标集合就制作好了。

然后用这个图标替换,重新编译,刷新一下系统图标缓存,然后改变图标缩放,就可以看到效果了。

rem 关闭Windows外壳程序explorer

taskkill /f /im explorer.exe

rem 清理系统图标缓存数据库

attrib -h -s -r "%userprofile%\AppData\Local\IconCache.db"

del /f "%userprofile%\AppData\Local\IconCache.db"

attrib /s /d -h -s -r "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\*"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_32.db"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_96.db"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_102.db"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_256.db"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_1024.db"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_idx.db"

del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_sr.db"

rem 清理 系统托盘记忆的图标

echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v IconStreams

echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v PastIconsStream

rem 重启Windows外壳程序explorer

start explorer

 

复制以上内容保存到 强制刷新图标缓存.bat 双击即可刷新系统图标缓存。  

最后附一张最终效果图:

20170308113030909

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/651/

标签: WinForm
分享给朋友:

“如何给程序添加超大图标(EXE大尺寸图标)” 的相关文章

MSP430 fail to initialize device解决

MSP430 fail to initialize device解决

日前,在用MSP430 USB仿真器下载程序的时候,突然提示“fail to initialize device”,碰到这个问题,我的第一反应就是检查下载线与单片机是否连接正确,仔细检查了一遍连线,发现连接无误,但是就是每次都提示“fail to initialize device”,然后无法...

DBNull.Value(数据库写入NULL)与null

DBNull.Value,, 适用于向数据库的表中插入空值。 null,是指在程序中表示空引用。 或者对象为空。就是没有实例化。 如果要向数据库写NULL,应该写入的是DBNull.Value,而不是直接赋值null。...

Proteus7.6SP4汉化补丁

不得不说国内牛人还是相当多的。尤其是sexywp大牛,看他Proteus破解的相当好。下面这个Proteus 7.6 SP4汉化补丁就是由他修改的。下载地址:http://ishare.iask.sina.com.cn/f/6733828.html介绍:用7.5的汉化修改而来,先和谐,再用汉化补丁覆...

Multisim导入MOSFET模型

文章来源:NI官网->在Multisim里导入MOSFET 模型 原文网址:http://digital.ni.com/public.nsf/allkb/E1DA418DD7A5E4A1862574B800219513 问题: 如何在Multisim器件里导入以“.MODEL&rd...

CorelDraw12启动时图标一闪而过

现象: Coreldraw12启动时,图标一闪而过,无法打开cdr文件。每次启动都如此。 之前一直是可以使用的,在某次强制关机后,就发现软件不能使用了。 临时解决办法: 网上说的各种方法都试过了,都不行。目前只探索出了两种临时可行的办法。 方法一:每次使用coreldraw12前卸载c...

itunes connect上传截图提示无法载入文件

itunes connect上传屏幕快照时,老提示“无法载入文件,请再试一次”。 可以肯定:图片格式和尺寸没问题。而且如果这俩有问题的话,会有相关提示的。 原因:文件名包含中文。 另外路径有中文没关系!...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。