关于图标的简单问题,50分哪!(50分)

Q

qixia

Unregistered / Unconfirmed
GUEST, unregistred user!
要提取EXE文件中的图标,请看以下过程 :<br>procedure TForm1.Button1Click(Sender: TObject);<br>var<br>&nbsp; ic:ticon;<br>begin<br>&nbsp; ic:=ticon.Create ;<br>&nbsp; ic.Handle :=extracticon(hinstance,'c:/windows/desktop/d.exe',0);<br>&nbsp; drawicon(form1.Canvas.Handle,50,50,ic.handle);<br>&nbsp; ic.SaveToFile('c:/windows/desktop/aaa.ico');<br>&nbsp; ic.Free ;<br>end;<br>其中 &nbsp;d.exe &nbsp;中有一个2238字节的颜色鲜艳的图标,<br>而输出的aaa.ico却只有667字节,而且颜色很难看。<br><br>请教各位大虾,如何才能得到与源文件的大小相同,<br>颜色数相同的图标?
 
如果你原来的图标很鲜艳,那么我遗憾的告诉你它不是一个标准的图标!<br>你得到的16色的才是标准图标。
 
也许原来的是256色的,可得到的是8色的呢?
 
可是16色的才是标准的
 
那有办法获得么?
 
NO PROBLEM!
 
to only you:你倒是说啊!
 
&nbsp; &nbsp; &nbsp; &nbsp;他说了,这是不可能的啊。ico的标准时16色。<br>&nbsp; 如果非要改的话,只好等到标准改的时候了。
 
但我看到有些软件可以提取啊,不管是什么颜色的
 
在E_E上也在讨论这个问题,现在还没有解决:)<br>有人提出方案(不是我):可以构建一个256色的调色板,<br>将a bitmap 画进TIcon canvas中。<br>我在等。。。<br><br>
 
你用IconView试试,它能把EXE的图标提出来
 
我&lt;font color=red&gt;修改&lt;/font&gt;了一个程序,现在可以将提取出来的图标保存<br>成为128色的,源程序已经给你发过去了,请查收。
 
收到,明天测试,可行就加分。<br><br><br>今天我被清华录取了,应用数学系啊!
 
这个程序确实能把图标存为256色的文件。但是请注意我的题目:<br>如何才能得到与源文件的图标&lt;font color=red&gt;大小相同,<br>颜色数相同&lt;/font&gt;的图标?<br><br><br>今夜真是难以入眠啊!!!!!!!!!!!!!!!!!!!!!!<br>十二年的寒窗,十二年的清华梦啊!!!!!!!!!!!!!!!!
 
用CoolIcon软件就可以了,可以支持真彩色.
 
我说的是用Delphi编程实现
 
如果有原吗我也要,delphisnail@263.net谢谢
 
用ExtractIconEx
 
beta 给我发一份好嘛<br>elan@chinaren.com
 
顶部