提取ico图标并保存的问题 ( 积分: 60 )

  • 主题发起人 主题发起人 aliwy
  • 开始时间 开始时间
A

aliwy

Unregistered / Unconfirmed
GUEST, unregistred user!
在使用API函数ExtractIcon()提取到exe文件的图标,然后用Image.Canvas.Draw(0,0,Hicon)显示在Image上,最后用Image.Picture.SaveToFile(FileName)保存为.ico文件。虽然此.ico文件可以用看图软件正常打开,但用uedit32.exe打开分析,其实还是BMP文件,也就是说此ico文件并不是真正的图标文件,在设置Delphi程序图标的时候是无法使用的。
请问要如何保存才可以成为真正的图标文件?
 
在使用API函数ExtractIcon()提取到exe文件的图标,然后用Image.Canvas.Draw(0,0,Hicon)显示在Image上,最后用Image.Picture.SaveToFile(FileName)保存为.ico文件。虽然此.ico文件可以用看图软件正常打开,但用uedit32.exe打开分析,其实还是BMP文件,也就是说此ico文件并不是真正的图标文件,在设置Delphi程序图标的时候是无法使用的。
请问要如何保存才可以成为真正的图标文件?
 
img1.Picture.Icon.Handle := 提取到exe文件的图标
img1.Picture.Icon.SaveToFile('c:/1.ico');
 
Image1.Picture.Icon.Handle := ExtractIcon(Application.Handle,PChar('路徑'),0);
Image1.Picture.Icon.SaveToFile('路徑');
 
晕啊,我还以为要显示出图标只能用Image.Canvas.Draw(0,0,Hicon)。
谢谢啊。
 
多人接受答案了。
 
后退
顶部