windows 文件关联图标的设置方法 (附部分代码)
windows文件关联图标的查看与设置, 主要是通过注册表实现的.
举例来说, .cpp文件的关联图标.
首先, 打开注册表: HKCR/.cpp, 如下图. 看红框部分, "默认"值, 即是 .cpp的值, 它==VisualStudio.cpp.9.0, 不用管它是什么东东, 我们直接打开 HCR/VisualStudio.cpp.9.0. 看下一幅图.
这里-----, 是VisulaStudio.cpp.9.0, 我们看DefaultIcon, 它就是指定了图标. "默认"值, 就是它的值.
它的值是: C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\VCProject.dll,2
即, 它使用 VCProject.dll 中的第3个图标. 我们可以试着改变它, 看是否会改变.cpp的图标.
注意:
如果该项下有CurVer项时, 就会忽略 DefaultIcon, 它会去找: HKCR\[CurVer]
然后使用HKCR\[CurVer]\DefaultIcon中的图标!
所以代码部分是非常好写的....我们要做的, 就是要做得比较人性化, 易用.
一. 要先提取出当前的图标, 像Windows默认一样, 我们可以把文件VCProject.dll中所有的图标都列出来. 使用 ExtractIcon 函数即可实现.
然后, 用一个ListView控件, ListView_SetImageList (), 即可将Icon全部显示出来, 然后根据索引2, 再选中2的图标, 这样就做到了显示.
也可以使用 SHGetFileInfo (...SHGFI_ICON|SHGFI_OPENICON..)进行获取,最好用这种方式,因为有些文件没有被记录到注册表中,这个时候,
它就会使用“打开程序”索引为0的图标。
二. 用GetOpenFileName去获取一个DLL/EXE或ICON文件, 如果是DLL/EXE, 就用[一]的方法进行显示, 并由用户去选择Index.
注意,如果是.ico文件,那么也要在最后加0,如: C:\a.ico,0
三. 使用用户选择的文件及索引, 直接进行设置注册表.
四. 使用 SHChangeNotify 进行更新界面图标.
五. 完成.
转载于:https://www.cnblogs.com/lin1270/archive/2011/12/23/2299136.html
windows 文件关联图标的设置方法 (附部分代码)相关推荐
- 转:Windows文件关联和VC实现
Windows文件关联分析 话题的提起: 百度遇到一位朋友紧急求助:系统是windows7,这位朋友因为桌面没有OFFICE图标,又急着要用WORD,就把一个桌面图标右击,选择打开方式中选择了word ...
- html 启动bat脚本,Windows开机自启动bat脚本设置方法
摘要 腾兴网为您分享:Windows开机自启动bat脚本设置方法,小睡眠,小书亭,托迈酷客,土豆等软件知识,以及显卡加亮,团购宝,多和梦,pdf编辑器,杭州地铁线路图,宝宝拼图游戏,蠕虫病毒专杀工具, ...
- 天翼网盘目录php,天翼云盘文件同步与目录设置方法
电脑知识-电脑高手网(http://www.dngsw.cn):天翼云盘文件同步与目录设置方法 在天翼云客户端中,不仅能够为我们提供文件上传功能,而且它还具有文件自动同步的功能,用户在下载使用天翼云P ...
- windows文件关联、打开方式列表之修改注册表攻略
这里全是修改注册表的方式.网上找了半天,有的仅有添加文件关联的方法,却没有添加到打开方式列表里面的方法:有的有添加到文件列表的方法,却是使用控制面板->文件夹选项的.好难得才找齐所有,从添加文件 ...
- 电脑怎么设置动态壁纸?关于Windows和Mac壁纸的设置方法
为了让电脑桌面更加美观舒适,很多人都会给电脑的桌面设置自己喜欢的壁纸.图片壁纸很多人都会设置,但是电脑怎么设置动态壁纸?这是很多人的困扰.其实方法同样很简单,下面有关于Windows和Mac动态壁纸的 ...
- mac 用户 文件夹 权限_WIN7局域网文件分权限共享设置方法
局域网内,不同win7系统下如何设置局域网文件共享 实现效果:打开我的电脑可以看到局域网内共享的文件夹 截止2019年win7系统已服役10年之久,系统越来越完善,兼容性越来越强.很多使用window ...
- PyQt5 技术篇-窗口名、窗口图标的设置方法。
窗口名.窗口图标设置方法: Dialog.setWindowIcon(QIcon("D:/pig.ico")) # 设置窗口图标 Dialog.setWindowTitle(&qu ...
- java fileupload 进度_Java上传文件进度条的实现方法(附demo源码下载)
本文实例讲述了Java上传文件进度条的实现方法.分享给大家供大家参考,具体如下: 东西很简单,主要用到commons-fileupload,其中有一个progressListener的接口,该接口可以 ...
- java保存图片进度条_Java上传文件进度条的实现方法(附demo源码下载)
本文实例讲述了Java上传文件进度条的实现方法.分享给大家供大家参考,具体如下: 东西很简单,主要用到commons-fileupload,其中有一个progressListener的接口,该接口可以 ...
最新文章
- 2022-2028年中国基因工程药物产业市场研究及前瞻分析报告
- ARTS打卡计划第四周-ALGORITHM
- poj1088 滑雪
- typescript+react+antd基础环境搭建
- lombok_Lombok–您绝对应该尝试一下
- 正则表达式 python_Python正则表达式总结
- Android 驱动(16)---AOSP如何单独build kernel
- 《Algorithms》Comparable 实现快速排序三向切分的快速排序
- java td背景色_jQuery:无法更改表格单元格的背景颜色
- 【Spring笔记】Spring介绍IOC理论推导
- PS流的格式和解析总结
- 实验三 直流扫描分析
- 傲梅分区助手看不到linux,傲梅分区助手使用教程
- 老农斗杀巨型蜈蚣目击记
- 人性的弱点 ——戴尔卡耐基(笔记)
- Java变量概述与使用
- golang中channel的传递
- YOLO系列代码解读(图像检测)
- CentOS 7无法启动,在进度条卡死问题解决
- ilove中文_Iloveyou翻译成中文是什么意思
热门文章
- java课程设计总结与思考,你掌握了多少?
- 淘淘商城FTP服务器、Redis和solr集群配置
- 【深度学习入门到精通系列】Python批量实现图像镜像翻转
- python【蓝桥杯vip练习题库】PREV-52小数第n位(模拟)
- 算法提高 c++_ch04_02_修正版
- linux python脚本返回,在C/python中执行linux命令并得到返回值以及输出
- php自己写配置项,创建配置文件 用PHP写出自己的BLOG系统 2
- 网络推广——网络推广专员从多角度分析网站关键词排名受影响因素
- 网络营销——网络营销专员浅析网站快照更新要点
- 浅析营销型网站SEO优化的四大原则!