开发者社区> lzhdim> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Delphi提取EXE,DLL文件图标

简介: //uses ShellAPI procedure   TForm1.Button1Click(Sender:   TObject); var       IconIndex:Word;       h:hICON; begin       IconIndex:=0;       ...
+关注继续查看

//uses ShellAPI

procedure   TForm1.Button1Click(Sender:   TObject);
var
      IconIndex:Word;
      h:hICON;
begin
      IconIndex:=0;
      h:=ExtractIcon(HInstance,pchar('c:"windows"notepad.exe'),IconIndex);
      DrawICon(Form1.canvas.Handle,200,100,h);
end;

//用控件ImageList保存提取的图标,并在ListView中显示出来
FIcon.Handle:=hIcon1;
ImageList1.AddIcon(fIcon);
ListItem:=ListView1.Items.Add;
ListItem.ImageIndex:=ImageList1.Count-1;
end;

====================================================

use    shellapi;       //提取出图标并赋给SpeedButton.Glyph
    
   procedure    TForm1.Button1Click(Sender:    TObject);   
   var   
       hc:    TIcon;   
       Bitmap    :    TBitmap;   
   begin   
   //打开exe   
       opendialog1.Execute;           
       hc    :=    TIcon.Create;   
       Bitmap    :=    TBitmap.Create;   
   //提取exe图标   
       hc.Handle    :=    ExtractIcon(hInstance,    PChar(opendialog1.FileName),    0);   
   //将得到的ico转换为bitmap   
       Bitmap.Width    :=    hc.Width;   
       Bitmap.Height    :=    hc.Height;   
       Bitmap.Canvas.Draw(0,    0,    hc    );   
   //把bitmap传给speedbutton.glyph   
       SpeedButton1.Glyph:=bitmap;   
   //释放资源   
       hc.Free;   
       Bitmap.Free;   
   end;

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
深入解析ext2文件系统之mke2fs
上一遍博文的重点其实将ext2整体的组织框架,我们知道了ext2文件系统由块组组成,每个块组里面的组织形式。我们甚至直接把超级块和组描述符里面的内容,用十六进制形式展现了出来。这篇博文主要讲述如何mke2fs生成合适需要的ext2 文件系统,基本就是参数选择的问题。
885 0
由于/etc/hosts文件中ip与实际ip不一致所导致oracle监听器不能识别
1. 今天在连接oracle时,发现客户端始终不能连接,但客户端却能ping [root@asm ~]# ping 192.
808 0
Delphi中编写无输出函数名的DLL文件
用 Delphi 用长了,总是发现,有些和 MS 不同的地方。例如,MS 的公开库中,常常隐藏了许多重要函数,这些函数在系统中常常有起着非常巨大的作用。
719 0
expdp 与 exclude 的问题
http://www.itpub.net/602958.html 我想使用expdp导出数据,其中有一个表很大,我不想导出,这个命令该如何写: expdp system/xxx DIRECTORY=BACKUP DUMPFILE=20060731.
795 0
Delphi与ASP结合发邮件
program ASPSendMail; uses Urlmon; begin UrlDownloadToFile(nil, Pchar('http://www.*****.com/good.asp?data=利用服务器发送邮件'), 0, 0, nil); end.
856 0
+关注
lzhdim
人在20岁以意志力著称,在30岁以智慧取胜,在40岁则靠的是理智的判断。 一个人只有时刻保持幸福快乐的感觉,才会使自己更加热爱生命,热爱生活。只有快乐,愉快的心情,才是创造力和人生动力的源泉;只有不断自己创造快乐,与自己快乐相处的人,才能远离痛苦与烦恼,才能拥有快乐的人生。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载