ICO File
The ICO file format is an image file format for computer icons in Microsoft Windows.
ICO files contain one or more small images at multiple sizes and color depths, such that they may be scaled appropriately.
In Windows, all executables that display an icon to the user, on the desktop, in the Start Menu, or in Windows Explorer, must carry the icon in ICO format.
Icons introduced in Windows 1.0 were 32×32 pixels in size and were monochrome.
Win32 introduced support for storing icon images of up to 16.7 million colors (TrueColor) and up to 256x256 pixels in dimensions.
Windows 95 also introduced a new Device Independent Bitmap (DIB) engine. However, 256 color was the default icon color depth in Windows 95. It was possible to enable 65535 color (Highcolor) icons by either modifying the Shell Icon BPP value in the registry or by purchasing Microsoft Plus! for Windows 95.
The Shell Icon Size value allows using larger icons in place of 32×32 icons and the Shell Small Icon Size value allows using custom sizes in place of 16×16 icons. Thus, a single icon file could store images of any size from 1×1 pixel up to 256×256 pixels (including non-square sizes) with 2 (rarely used),16, 256, 65535, or 16.7 million colors; but the shell could not display very large sized icons. The notification area of the Windows taskbar was limited to 16 color icons by default until Windows Me when it was updated to support high color icons.
Windows XP added support for 32-bit color (16.7 million colors plus alpha channel transparency) icon images, thus allowing semitransparent areas like shadows, anti-aliasing, and glass-like effects to be drawn in an icon.
Windows XP, by default, employs 48×48 pixel icons in Windows Explorer. Windows XP can be forced to use icons as large as 256×256 by modifying the Shell icon size value but this would cause all 32×32 icons throughout the shell to be upscaled. Microsoft only recommended icon sizes up to 48×48 pixels for Windows XP. Windows XP can downscale 256×256 and larger icons if no closer image size is available.
Windows Vista added a 256×256-pixel icon view to Windows Explorer, as well as support for the compressed PNG format. Although compression is not required, Microsoft recommends that all 256×256 icons in ICO files should be stored in PNG format to reduce the overall size of the file. The Windows Vista Explorer supports smoothly scaling icons to non-standard sizes which are rendered on the fly even if an image is not present for that size in the icon file. The Windows Vista shell adds a slider for "zooming" the icon sizes in and out.
With users using higher resolutions and high DPI modes, larger icon formats (such as 256×256) are recommended.