Bueno, como ayer no me quedé agusto :), te mando informacion un poco mas
técnica:
FORMATO DEL ARCHIVO DE ICONO (*.ICO) :
Un archivo de icono, con una extensión *.ICO, puede en realidad contener
cualquier número de iconos. En general, cada icono será la interpretación
de una imagen de icono diseñada para un dispositivo en particular. De este
modo, un solo archivo de icono puede contener iconos para dispositivos CGA,
monocromos, VGA y Super VGA.
Un archivo de icono comienza con una estructura ICONDIR, tal como se
describe a continuación:
ESTRUCTURA ICONDIR:
Declaración VB: Type ICONDIR ' 6 Bytes
idReserved As Integer
idType As Integer
idCount As Integer
End Type
Descripcion: Esta estructura aparece al comienzo de un archivo de
icono.
Campo: Tipo/Descripción:
IdReserved Integer. No se usa; pongase a 0.
IdType Integer. 1
IdCount Integer. El número de iconos en el archivo.
Especifica el número de estructuras ICONDIRENTRY que siguen a esta
estructura en el archivo.
La estructura ICONDIR va seguida de una serie de estructuras ICONDIRENTRY,
cada una de las cuales define las caracteristicas de uno de los iconos del
archivo. La estructura se define de la siguiente manera:
ESTRUCTURA ICONDIRENTRY:
Declaración VB: Type ICONDIRENTRY
bWidth As Byte
bHeight As Byte
bColorCount As Byte
bReserved As Byte
wPlanes As Integer
wBitCount As Integer
dwByteslnRes As Long
dwImageOffset As Long
End Type
Descripción: Cada icono del archivo de iconos tiene asociada una estructura
ICONDIRENTRY que describe las caracteristicas del icono.
Campo: Tipo/Descripción:
bWidth Byte. El ancho del icono. Puede ser 16, 32 ó 64. La mayoría de los
iconos de Windows son de 32 x 32.
bHeight Byte. La altura del icono. Puede ser 16, 32 ó 64. La mayoría de
los iconos de Windows son de 32 x 32.
bColorCount Byte. El número de colores usados por los iconos. Puede ser 2,
8 ó 16.
bReserved Byte. No se usa; póngase a 0.
wPlanes Integer. El número de niveles de color de un icono.
wBitCount Integer. El número de bits por pixel de un icono.
dwByteslnRes Long. El tamaño del icono, expresado en bytes.
dwImageOffset Long. El desplazamiento del icono desde el comienzo del
archivo.
Esta extructura provee suficiente informacion a Windows o a una aplicación
para que elijan el icono del archivo que más se adapte al dispositivo de
representación visual.
Despues de todas las estructuras ICONDIRENTRY aparecen los datos del icono.
Cada icono está compuesto por dos mapas de bits: un mapa de bits XOR que
define la parte de OR exclusivo del icono y un mapa de bits AND que define
la máscara AND. El mapa de bits XOR aparece primero y consiste en un mapa
de bits independiente del dispositivo. Este mapa de bits puede ser
monocromo o de color.
Aquí tienes otras definiciones de tipos que te puede ser útiles:
Type ICONINFO
fIcon As Boolean
xHotspot As Long
yHotspot As Long
hbmMask As Long
hbmColor As Long
End Type
Type ICONMETRICS
cbSize As Long
iHorzSpacing As Long
iVertSpacing As Long
iTitleWrap As Long
lfFont As LOGFONT
End Type