Window中的Icon属性会使Windows XP SP2中的应用程序崩溃

时间:2010-02-11 23:32:12

标签: wpf crash windows-xp icons portability

假设我有这个:

<Window stuff Icon="Resources\myicon.ico">

如果我在Windows 7上运行该程序,那很好。如果我在Windows XP SP2上运行它,它会崩溃。删除Icon属性,它在Windows XP上运行正常,但它在Windows 7任务栏或窗口上没有我的myicon。

此外,在VS项目菜单上设置应用程序图标对W7不起作用,但适用于XP。总结:

<Icon> =破碎的XP,确定W7
没有<Icon> =好的XP,丑陋的W7
VS项目图标选项=不适用于W7,ok XP

为了记录,我创建了16x16,22x22等图标,直到256x256为32,24和8位。我还使用IcoFX自动选项为Windows XP创建.ico图像。

有解决方法吗?或者我必须在丑陋的Windows 7(和Vista?)应用程序或没有Windows XP应用程序之间进行选择?

2 个答案:

答案 0 :(得分:16)

XP不支持256x256图标。删除XP的256图标。

答案 1 :(得分:2)

它与分辨率无关,但格式如下:Windows XP无法处理ICO文件中的PNG压缩图标。通常只有较大的反射被压缩,大多数是256x256 我使用http://iconverticons.com/创建ICO文件,他们还使用PNG压缩128x128图像。

要解决此问题,请在Visual Studio中打开您的ICO文件,并以PNG格式删除该图标的所有版本。或者,您可以使用icoFx将PNG图标转换为BMP格式。只需在选项对话框中禁用压缩,然后将图标保存到新文件即可 您可以在此处下载IcoFx最新免费版本:http://www.chip.de/downloads/IcoFX-letzte-Freeware-Version_28266149.html