说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB如何从文件中提取图标

HTML文档下载 WORD文档下载 PDF文档下载
VB如何从文件中提取图标



使用下面的示例,你可以方便地从EXE,DLL及ICO文件中提取图标。该示例程序使用ExtractIconEX API函数从文件中提取图标,并返回图标句柄,然后利用该句柄,使用DrawIcon函数将图标绘制到目标设备中。最后清除句柄以释放系统资源。

创建新工程后,在工程中添加对Standard OLE Types的引用,然后在工程中添加一个标准模块。将下面的代码粘贴到标准模块中:

Option Explicit

Private Type PicBmp
Size As Long
tType As Long
hBmp As Long
hPal As Long
Reserved As Long
End Type
Private Type GUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(7) As Byte
End Type
Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" (PicDesc As PicBmp, RefIID As GUID, _
ByVal fPictureOwnsHandle As Long, IPic As IPicture) As Long

Private Declare Function ExtractIconEx Lib "shell32.dll" Alias "ExtractIconExA" (ByVal lpszFile As String, ByVal _
nIconIndex As Long, phiconLarge As Long, phiconSmall As Long, ByVal nIcons As Long) As Long

Private Declare Function DestroyIcon Lib "user32" (ByVal hicon As Long) As Long

Public Function GetIconFromFile(FileName As String, IconIndex As Long, UseLargeIcon As Boolean) As Picture

'参数:
'FileName - 包含有图标的文件 (EXE or DLL)
'IconIndex - 欲提取的圉标的索引,从零开始
'UseLargeIcon-如设置为True,则提取大图标,否则提取小图标
'返回值: 包含标标的Picture对象

Dim hlargeicon As Long
Dim hsmallicon As Long
Dim selhandle As Long

' IPicture requires a reference to "Standard OLE Types."
Dim pic As PicBmp
Dim IPic As IPicture
Dim IID_IDispatch As GUID

If ExtractIconEx(FileName, IconIndex, hlargeicon, hsmallicon, 1) > 0 Then

If UseLargeIcon Then
selhandle = hlargeicon
Else
selhandle = hsmallicon
End If

' Fill in with IDispatch Interface ID.
With IID_IDispatch
.Data1 = &H20400
.Data4(0) = &HC0
.Data4(7) = &H46
End With
' Fill Pic with necessary parts.
With pic
.Size = Len(pic) ' Length of structure.
.tType = vbPicTypeIcon ' Type of Picture (bitmap).
.hBmp = selhandle ' Handle to bitmap.
End With

' Create Picture object.
Call OleCreatePictureIndirect(pic, IID_IDispatch, 1, IPic)

' Return the new Picture object.
Set GetIconFromFile = IPic

DestroyIcon hsmallicon
DestroyIcon hlargeicon

End If
End Function
在窗体中添加一个PictureBox控件和一个命令按钮,把下面的代码加入到命令按钮的Click事件中:

Set Picture1.Picture = GetIconFromFile("c:\windows\moricons.dll", _ 0, True)

按F5运行程序,点击命令按钮后,PictureBox会将文件moricons.dll中的图标索引为零的图标画到PictureBox中。

微软推超强Android应用Switch to Windows Phone Unity CEO宣布:放弃支持Flash平台 为交房租做App:我第一年赚了7万美金 iOS越狱大神Comex加盟Google 曾错过苹果Offer 维基百科正式从MySQL迁移到MariaDB数据库 JavaScript MVC框架PK:Angular、Backbone、CanJS与Ember 大数据推广引领精准推广浪潮 ThoughtWorks负责人曾学海:数字渠道细分带来的架构演进 你画我猜2 : Draw Something 2正式发布 云中游科技CEO张帆:畅谈“找你妹”的自营销 Oracle当心,MySQL原始团队已重整旗鼓! 优秀的Meteor学习资源 ThoughtWorks美女分析师:如何规划企业在线数字渠道战略? OpenStack将怎样影响软件行业? 知识产权日特稿:谁动了程序员的源代码版权? MIT技术评论评选2013十大突破性技术:深度学习居首 Chrome测试版添扩展程序 可直接浏览Office文档 Ubuntu 13.04携中文衍生版UbuntuKylin 13.04发布 Spark核心开发者:性能超Hadoop百倍,算法实现仅有其1/10或1/100 移动开发的碎片化时代,我们该怎么办? 谈应用分发控制力:还是渠道为王 Unity亚洲开发者大会:手游半衰期越短,开发者手中的机会越多 《割绳子》开发者:俄罗斯双胞胎的奋斗史 曾应聘Rovio未果 Win7系统上常见IE 10问题汇总 如果苹果推廉价手机,市场份额会不会超过安卓? 移动互联网下,如何做儿童新音乐? 第三届“中科杯”全国软件设计大赛正式启动 注重稳定性 Docker 0.2.0发布 何谓机器学习 机器学习能做些什么? 艰难的决定:EA裁员10%,殃及PopCap 或提前落地!Amazon和Facebook急聘SDN工程师(Python优先) 请问,这个sql语句应该怎么写(ms sqlserver)? 关于select元素取值问题 请哪位网友,给我寄一个Jeode的JAVA虚拟机把,不甚感谢 分不是问题,少了可以再加 如何建立一个对象数组 winexec启动/关闭外部程序的问题 多组数据保存到文件和提取的问题!!(第3遍发问了,帮忙看看啊!)谢谢谢谢!!!!! CRecordSet可以执行SQL语句吗 >>>>>超难度问题<<<<<怎样在屏幕上锁定一个移动的物体并得到它的x,y坐标 用ADO访问数据库时,如何拼写动态SQL 麻烦给发个Jbuilder7的注册机,注册码不会用不要!急! 请问在ASP中调用DLL到底需不需要注册,我怎么看有的需要注册,有的不需要! ASP 0115 ??错误,怎么办?急 OLE 文档序列化!请大虾指教! 双硬盘????,郁闷中。。。在线等 批量数据写入,是否有简捷的方法 请问谁有1、美达S693A2主板光盘;2、还有美达p4vad主板,是什么显卡? 用java weblogic.ejbc编译时为何总报找不到.xml文件 ftp的问题 请问各位:如何在ASP.NET中打开一个现有的或一个新的WORD文档? 讨论怎么发财 关于查询系统的需求分析怎么写?用触摸屏实现 如何把一个文件保存到数据库中? 耦合 哪里有WEB合同管理代码?或资料?演示?急!!!谢谢!有人知道吗?? 谁能把这段代码破解 求一函数,在线等....... 剛&#24478;vb轉delphi,&#24171;我看一看!結貼&#24456;&#24555;! 如何可在WINXP中改MAC?? sprintf(a,"%2X",b)问题 关于简单的access查询 java字符转换问题!!! 请教一个Struts标记问题! 一个cab下载的错误信息解读,请教高人。 OutLook?怎么用它发邮件,经常提示错误? 帮看这段删除纪录代码有什么问题?三层结构oracle 本人要做一个WEB合同管理平台,由于以前没做过,请大家指示? Web Application 中怎么来调用 Web Server?谢谢! DataGrid中模板列嵌套的DataGrid怎样相应其事件 [调查]程序员证在你们公司里到底有多大的作用?有多少人有证?希望有没有证的都进来说一下。 怎样把字符串"C;\aaa\bbb"变成字符串"C:\aaa\ccc\dd"?用什么函数,操作? 我的SQL Server 装好后,出现下面的错误 这个文件查找真是怪!......msdn源代码居然有问题, 进来看看... 请问在TreeView控件中如何通过光标的上下移动获得光标所在项在数据库中的ID值 對掌上電腦Sony Peg-TG50和ACER N10怎麼看??? 使用SOAP协议传递服务器端查询结果容量问题? 菜鸟问题:数据窗口怎么设置检索参数?急!!在线等 ****入门提出的问题****,请各位高手指教! 很简单的一个问题。 这个问题怎么处理? vb如何调用一个组件?? 一道有关染色体排列组合的统计题题目大概是这样的:染色体基因(?)有四种 A T G C 用这四个字母组成一条十个字母的染色体 相同字母不同顺序的算是不同的染色体 但是如果顺序颠倒的话 跟踪练习五,回答既给好评 给下列广告消毒 恢复这些成语的原貌1、某消炎广告词:快治人口【 】2、某止咳广告词:咳不容缓【 】3、某自行车广告词:骑乐无穷【 】4、某保温杯广告词:有口皆杯【 】 冷水和热水谁沸腾的快? 马有几条染色体?如题 练习五.8.用棱长1cm的小正方体摆成稍大一些的正方体,至少需要多少个小正方体? 三极管2sc5200的极性怎么排列,怎样测量参数是否配对? 我的电话早上坐公交时被偷了,新疆人干的!英文翻译 怎样快速写离子方程式?看到一个反应不用化学方程式就可以写离子方程式的 氧化钙如何转化为碳酸钙 人们常说的染色体是什么啊 求练习五的答案! 怎么使水尽快沸腾? 两种 快啊! 女人喝白酒好么? 练习五的成语练习五的所有成语意思 从一系列不平等条约的视角说明中国如何沦为半殖民地半封建社会" 已知数列An的通项公式为An=(2/3)的n-1次方乘以【(2/3)的n-1次方-1】,则最大值?最小值是? heip me 全对给100将下列物质分别按混合物,纯净物;单质,化合物,氧化物分类1空气 2氧气 3水蒸气 4二氧化碳 5高锰酸钾 6铁粉 7氮气 8氧化铁 谢谢( ̄∇ ̄) 同源染色体出现方式同源染色体是否可以单独存在而非成对存在?同源染色体的结构是X还是XX? 离子方程式的书写是否需要写上发生条件比如一个离子反应的发生需要催化剂 需要在离子反应方程式上写出来吗?举个例子吧 要写催化剂的 过程( ̄∇ ̄) 快→_→ 一na可不可以理解为一mol, 人生若只如初见,何事西风悲画扇?等闲变却故人心,却道故人心易变!这个世界还有沧海桑田吗?这个世界还有沧海桑田吗? 列强是如何侵略中国领土的?中国是如何一步步沦为半殖民地半封建社会的? 如果人的命已经注定,当知道这个事实生活的意义又是什么?有些人不相信,我也不想相信,但问题是这些东西是能算出来的,而且很准啊,这怎么解释呢,性格,生活水平,工作都可以算出来,那不就说 中共八七会议的主要内容 乌头草和月圆之夜有什么联系 乌头草有什么背景或传说吗? 当你说需要个夏天我会拼了命的努力 当你说需要个夏天我会拼了命的努力,我说的是这句话,他想要夏天,另外一个为什么要努力呢? 八七会议的主要内容? 川乌 草乌 有什么不同 化学计量中什么时候用mol什么时候用NA 即墨实验高中高一语文课本里都有什么需要背的课文? 1901年( )条约使中国完全沦为半殖民地半封建社会.A南京,B北京,C马关,D辛丑 请问B型血的人,有什么不适合吃的食物吗? 功w=fs,s是时间还是距离?w有用=fs,s是时间还是距离?晕了 烟灰是不是草酸?可以用烟灰除铁锈吗? B型血的人不能吃什么东西? 关于W=FS的问题.请问一下F等于啥? 1厘米多少英寸 B型血的人应该吃什么求解答 在水平匀速拉动物体,η=W有用÷W总=fs物÷Fs绳×100%,这里的摩擦力f和拉力F相同吗?为什么? 乌头是谁啊1```` 为什么说牛蒡茶养人 如何提高油分离器的效率 炙乌头和生乌头的液相色谱差别是什么? 女人喝牛蒡茶好吗 构成胃蛋白酶分子的基本单位是? 5HV2耳机配西伯利亚ICEMAT声卡 7.1 USB 怎么样? 什么人不能喝牛蒡茶 八七会议总方针内容 买个西伯利亚的声卡是不是非要配合西伯利亚耳机用呢?西伯利亚的声卡能不能不用在西伯利亚耳机上?插在其他耳机上行不行?音效各方面有影响吗?暂时还买不起西伯利亚只买的起它的声卡. 女性喝牛蒡茶好吗?牛蒡茶的功效与作用有哪些? 优点和缺点分别是什么? 川草乌是什么 牛蒡茶,牛蒡茶哪里的牛蒡茶好,洪北苑牛蒡茶怎么样? 什么时候进行的?有什么优点,有什么弊端? “同源染色体”是“一对”染色体还是“一条”染色体?如题 还有,染色单体,染色体,同源染色体三者的包含关系?常说的XY性染色体是“一条”染色体还是“一对”染色体? 单质的定义 某同学在做电解食盐水的实验时,误用铜棒作两极材料,请判断下列说法正确的是( ).A.完全电解后,得到CuCl2溶液B.电解完全并放置一段时间后,得到蓝色沉淀和NaCl溶液C.电解一段时间后NaCl浓度可 安倍7小时长会后品尝软柿子 满足称“伊朗死囚受绞刑未死 司法部长称没必要杭州十大赏秋处出榜 灵隐路杨公堤龙井英国乔治小王子受洗仪式23日举行 不日本男教师误会“性暗示” 当众露下体俄罗斯暴力恐怖事件频发 总统普京抨击日本拉平企业与政府薪资差距 全国公务日韩航线日本乘客骤减3成 创历史新低报道称泰北“孤军”后裔学中文当导游收法国媒体再曝美国监听法国驻美和联合国澳大利亚11岁男孩因纵火被关“虚拟软美国校园枪击案枪手曾遭欺凌 开枪或是澳大利亚11岁男孩因纵火被关“虚拟软以情报部长质疑伊朗谈判诚意 呼吁美国视频:10岁男孩午夜被切断右手 扔进巨型牡蛎长约35.5厘米 或为世界上俄罗斯暴力事件频发 普京抨击外国势力美国被曝监听意大利民众通讯 意政府或财经观察:供应充裕令纽约油价跌破百元美民调:58%民众支持大麻合法化 比律师:系统存信息泄露风险 酒店或应负十年风雨致富路第七届珠穆朗玛摄影展评选揭晓山南地区对景区开展食卫专项检查飞龙在天我区启动“名校办分校”工程21日起长 沙路人搭“人梯”相救我区各地以服务型党组织建设引领基层党中阿举行首次经济合作与协调战略对话采取紧急措施化解乌危机跑步摆臂消耗能量少21名埃及士兵遇袭身亡气候变暖致青藏高原“暖湿化”马航空难第一批遇难者遗体运出现场齐扎拉讲话 白玛朗杰出席走村入户送健康著名藏医占堆荣获“国医大师”称号推动党员干部远程教育让世界分享“西藏好水”圣彼得堡色彩节
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘