请问哪里有管理图标的软件(50分)

  • 主题发起人 主题发起人 fatBaby
  • 开始时间 开始时间
F

fatBaby

Unregistered / Unconfirmed
GUEST, unregistred user!
我需要将 *.icl 中的图标拉到桌面或资源管理器中的某个目录的
我试用了 iconBook 和 Microangelo 98 , 均不支持拖拽到目录中,我有好多好多的 *.icl
总不见得让我一个个的 Save as 吧 ...
 
到这里看看:
http://www.newhua.com.cn/ty_icon.htm
 
源程序:


var
x,NumberOfIcons: integer;
Icon: TIcon;
pFName: array[0..255] of char;
oldCursor: TCursor;
begin
if FileExists('1.icl') then begin
OldCursor := Screen.Cursor;
Screen.CurSor := crHourGlass;
NumberOfIcons := ExtractIcon(hInstance, StrPCopy(pFName, '1.icl'), $FFFFFFFF);
try
for x := 0 to NumberOfIcons - 1 do begin
Icon := TIcon.Create;
Icon.Handle := ExtractIcon(hInstance, pFName, x);
icon.SaveToFile(inttostr(x)+'.ico');
form1.Caption := Format('%d', [x]);
Icon.Free;
end;
finally
Screen.Cursor := OldCursor;
end;
end;
end;

程序需要调用ShellAPI.pas。

不过这个程序可以把一个图标库中的所有32X32的图标依次以1.ico,2.ico,3.ico的名字存储,不知对你有没有帮助,我只能做到这一步了。
现成的软件,我想不到哪个能满足你的需要,MA98应该是最好的了。
 
到这里去看看:http://www.cnshare.net
 
to CaoAizu:
多色icon 一保存变成 16 色了, :( ...
 
我也很头疼这个问题,各位有社么好办法吗?
 
;fIcon :=TIcon.Create;
try
// fIcon.Handle := extractIcon(hInstance,s1 , 0);
// fIcon.LoadFromFile(s1);

看看以上这两句的不同。不过为什么我也不知道

Image2.Picture.Icon.Assign(fIcon);
fIcon.SaveToFile('h:/a.ico');
Image3.Picture.Icon.LoadFromFile('h:/a.ico');
finally
fIcon.Free;
end;
 
关键问题好象出在 ExtractIcon 和 ExtractIconEx , 在扩展出 icon 时,图标的色彩
已经失真了,我想 MS 应该会有更好的 api 吧!是什么呢 ?
 
如果用loadFromFile ,那么image2 和 image3显示的都是真彩的
如果用extractIcon,那么image2是真彩的,image3是16色的。可能是在保存了以后,颜色
才丢失了。
 
是不是要对调色板进行一下处理呢 ?
 
茫茫东海龙宫,居然没有一件趁手的兵器 ???
 
给,金箍棒!
 
刚刚看了一下 ticon的声明,发现它是继承自tgraphic。同时,在tgraphic中有两个
虚拟方法 SetPalette 和 getPalette 。但是ticon类声明中没有重载该方法。但是
比较一下 tbitmap的类声明,却是有的。所以是不是自己再从ticon中继承一个类
对这两个虚拟方法进行重载?

以上只是我得看法,不知各位大虾以为然否?
 
我想问题应该出在 ExtractIcon 和 ExtractIconEx 上,会不会有更好的 api 呢 ?
 
附加功能 将问题提前
 
有一个软件可以自动搜索一个目录或者一个驱动器上的所有图标(包括资源文件和exe文件里
的图表),然后另存为一块地方。
 
这问题还没结束?我以为很快就能有答案了呢。

Icon Digger 2000
http://home.sdinfo.net/jwjjt/patch8/picndggr21.exe
这个免费的软件可以让你从执行文件(*.exe),图像库(*.icl),
和动态链接库(*.dll)中将图标提取出来,你需要在
这个软件中打开你希望看到图标的目录,就可以看到有关的图标了,
你现在可以把它们保存为.ico文件。

Microangelo On Display
http://home.sdinfo.net/jwjjt/soft3/mcrody20.exe
Microangelo 系列软件的下一代产品,替代了 Microangelo 98 的 muengnr.exe程序部分
,成为独立的软件。功能当然也和前一代版本的功能相仿,最新支持Windows2000,
还附带很多图标库 .icl 文件。
 
god, 比 Microangelo 98 还烂
取出的 icon 是 16 色的

用 IconEdit Pro V6.02
能一下子提取所有的图标,安 0000~9999 自动命名,不错,在桌面更新网站上有
具体 url 忘了, Search 一把吧
 
后退
顶部