我把一个文件加载到picturebox中,然后点击一个btn将pic中的图片以ico格式输出,采用下面的方法:
picICON.Image.Save(a.ico",System.Drawing.Imaging.ImageFormat.Icon);
原来的ICO是能正常预览的,而输出的ico使用图片查看器是可以查看,但这个输出的ico用做文件图标时就显示不了。这是什么问题?

解决方案 »

  1.   

    可能是 .NET 本身的限制。ICO 文件一般可以包含多幅不同尺寸的图标图像,你的做法只能保存一副,预览时 WIndows 找不到所需尺寸的图标。可以使用功能更强大的 ICON 类,参见:http://www.codeproject.com/KB/cs/iconhandler.aspx
      

  2.   

    目前.net不支持ico格式输出,实际输出的还是原来的图片格式(jpg,bmp等等)。
    因此图片查看器是可以查看,但用做文件图标时就显示不了。实际上Image.Save("...", ImageFormat.Icon);应该抛出一个异常的(我认为是微软的错)。