如何替换文件图标?

longdechuanren 2006-10-09 11:04:52
如何编程实现文件图标的替换,如文本文件,文件夹,exe文件的图标的替换等?
...全文
1458 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoucongjie 2006-10-19
  • 打赏
  • 举报
回复
路过
柯本 2006-10-18
  • 打赏
  • 举报
回复
http://www.codeproject.com/shell/overlayicon.asp
longdechuanren 2006-10-18
  • 打赏
  • 举报
回复
刚找到一个方法,用IShellIconOverlayIdentifier能解决问题。请问有人知道IShellIconOverlayIdentifier中三个函数的用法吗,最好有例子,C++的。
longdechuanren 2006-10-18
  • 打赏
  • 举报
回复
这个我当然看过,用不了啊
柯本 2006-10-11
  • 打赏
  • 举报
回复
如果是改运行文件的icon:
简单地:
SendMessage(WindowHandle,WM_SETICON,ICON_SMALL,(long)IconHandle);
柯本 2006-10-11
  • 打赏
  • 举报
回复
改exe的:
http://www.xfocus.net/articles/200112/317.html
另一方法:
http://community.csdn.net/Expert/topic/4892/4892716.xml?temp=.8110315
改其它文件的图标,只要改注册表就可以了:
首先得到该文件的类型:如.txt
HKEY_CLASSES_ROOT\.txt它的(默认)值为txtfile
然后修改
HKEY_CLASSES_ROOT\txtfile\DefaultIcon
的值(如果没有,可以新建)
将它的(默认)改为
1.%1(本身)
2.xxx.dll(exe),1 : xxx(exe).dll的第一个图标
3.xxx.ico图标
改注册表编程应该不难吧
longdechuanren 2006-10-11
  • 打赏
  • 举报
回复
现在已经有一个图标句柄了,就是用它来替换原文件的图标。
longdechuanren 2006-10-11
  • 打赏
  • 举报
回复
没人回答啊?
jixingzhong 2006-10-10
  • 打赏
  • 举报
回复
软件简介: ◇更改可执行文件(exe,dll,ocx,scr等)中的图标,可以是从16X16至64X64中的任意图标,支持从2色到真彩色。
◇保存可执行文件中的图标为ICO文件。
◇保存可执行文件中的图标为BMP文件,可更改位图文件的背景色。
◇支持将大图标改换为等大或比其小的图标(如将48X48X256改换为32X32X16的图标)。
◇自动备份欲修改的程序,以bak+数字为扩展名。
◇对标准正常程序支持从小图标改换为大图标。
◇支持包含1000个图标的Exe或Dll文件。
◇支持真彩色图标。
◇支持Windows 9X/Me/NT/2000/XP。
◇更改驱动器或文件夹的图标!

http://soft.pcnow.com.cn/soft/21973.shtml
longdechuanren 2006-10-10
  • 打赏
  • 举报
回复
况且这个函数很多图标也不能获取,如文件夹,txt,html的图标等
longdechuanren 2006-10-10
  • 打赏
  • 举报
回复
那是获取资源的图标,不是替换
chenhu_doc 2006-10-09
  • 打赏
  • 举报
回复
ExtractIconEx
The ExtractIconEx function creates an array of handles to large or small icons extracted from the specified executable file, dynamic-link library (DLL), or icon file.

UINT ExtractIconEx(
LPCTSTR lpszFile,
int nIconIndex,
HICON FAR *phiconLarge,
HICON FAR *phiconSmall,
UINT nIcons
);

64,643

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧