Hola,
En InnoSetup cuentas con un Script de ejemplo de nombre "CodeClasses.iss". En el mismo se utilizan, entre otras clases soportadas, el "TBitmapImage". Puede verse como se incluye (temporalmente) un determinado archivo de imagen, y cómo luego se crea una instancia de la clase mencionada y se carga (desde el directorio temporal correspondiente) la imagen susomentada. Echa un vistazo. Es interesante y creo que resuelve el problema.
Por cierto, la clase "TBitmapImage" se añadió a InnoSetup en la versión 4.1.2. Asegúrate de que utilizas esa versión o una superior.
Aquí un extracto del código fuente del Script de InnoSetup que he mencionado:
Código:
[ Files ]
Source: compiler:WizModernSmallImage.bmp; Flags: dontcopy
[ Code ]
{ TBitmapImage }
Page := CreateCustomPage(Page.ID, 'Custom wizard page controls', 'TBitmapImage');
BitmapFileName := ExpandConstant('{tmp}\WizModernSmallImage.bmp');
ExtractTemporaryFile(ExtractFileName(BitmapFileName));
BitmapImage := TBitmapImage.Create(Page);
BitmapImage.AutoSize := True;
BitmapImage.Bitmap.LoadFromFile(BitmapFileName);
BitmapImage.Parent := Page.Surface;