我的图标是256×256.我使用http://converticon.com/来创建图标(我认为是bmp).我使用Inno Setup中的图标创建了一个安装程序,它工作正常
所以我去选项 – >应用程序并尝试加载它.但是,Delphi 2007给出了一个错误’参数不正确’.有了这个信息:http://i.stack.imgur.com/vRCgs.png
当我在Delphi XE中做同样的事情时,它可以工作并加载图标并在编译时更改它.我现在不能使用XE,因为该程序使用了一个unicode问题的数学解析器(这可以解决以后的问题)
所以,我所做的是在XE中打开项目,更改图标,保存它,删除dproj并在2007年打开它.这可以工作,编译并显示正确的图标,但是当我转到项目选项时,它给了我相同的’参数不正确’错误.
解决方法不是什么大问题,但我不应该这样做.有谁知道为什么我不能在Delphi 2007中更改图标?
编辑:我只是使用相同的converticon网站将256×256图标转换为192×192和更小,现在它完美地工作.谢谢你的回答
解决方法
你有两个可能的修复:
>找到一个ICO编辑器并删除所有较大的格式,直到您的Delphi接受该图标.我个人从未见过现实世界中使用的256×256,他们占用了用户桌面或Windows资源管理器中的大量空间.
>使用虚拟图标并在Delphi完成后替换生成的exe中的图标资源.这样您就可以保留所有较大的图像格式,包括256×256 PNG图像.
编辑以更正错误
如果可能,请始终包含256×256图像,Windows将其缩小至64×64以上的所有内容.
我一直认为Windows资源管理器会显示一个基于ICO中最接近的匹配图像大小的图像.也就是说,如果需要128×128图像,Windows将使用128×128图像(如果可用),或者缩小256×256图像(如果可用),或者放大96×96图像.显然不是这样.我刚刚创建了一个由多种图像格式组成的测试图标,包括32,48,72,96,128和256,由简单的颜色块组成(使用泛光填充工具).在Windows资源管理器中,我循环播放各种显示模式,很明显,从“大图标”(并且不是很大)开始,Windows将缩小256×256图标,如果不可用,请使用未缩放的48×48图标!结果真是丑陋和意外. 72×72,96×96和128×128图标被忽略了.
谢谢大卫指出这一点.