Я использую 2 500K растровых изображений для отображения изображений в диалоговых окнах WiX.
Они резко увеличивают размер установочного пакета, и, что еще хуже, похоже, что нет способа упаковать их как часть файла .cab, поскольку они <binary>-е в терминах WiX.
Итак, я подумал, есть ли способ использовать другие форматы файлов для растровых изображений или WiX привязан к BMP? В идеале было бы неплохо, если бы есть способ использовать формат .png, поскольку он поставляется с опцией беспрепятственного сжатия.


В документации установщика Windows для Управление растровым изображением указано, что изображение должно быть «растровым» - предположительно файлом .BMP - или JPEG.
При работе с WiX нужно помнить, что он основан на установщике Windows. Это означает, что любые ограничения в WiX часто вызваны ограничениями в базовой реализации установщика Windows.
Файлы .BMP могут быть сжаты с помощью RLE. Я не знаю, поддерживают ли они какие-либо другие алгоритмы сжатия.
@ user48829; Интересно то, что в документации кажется, что элемент управления Bitmap теперь поддерживает изображения .PNG на win8. :П
Я бы также держался подальше от jpeg или сжатого bmp. Прочтите мой ответ для подробностей.
Набор инструментов WiX не привязан к BMP и JPG. Как вы обнаружили, вы можете поместить в свой пакет любой из этих форматов изображений. Однако MSI SDK документирует только поддержку BMP и JPG.
Очевидно, я не буду сомневаться в тебе, Роб. Тем не менее: вы можете прояснить это? У меня создалось впечатление, что элементы управления MSI были встроенными, и что WiX ничего с ними не мог поделать. Тем не менее, ОП конкретно не говорила об элементах управления, но ...
Роджер, я просто пытался отделить MSI от WiX. WiX позволит вам хранить все, что находится в двоичной таблице, даже если MSI будет отображать только BMP и JPG. Зачем вам хранить PNG в двоичной таблице? Я не знаю, но WiX не виноват, что он не отображается в пользовательском интерфейсе. <улыбка />
Похоже, в Windows 8 (.1) добавлена поддержка PNG
Как было указано в других ответах, ограничение формата изображения связано с реализацией MSI Microsoft, а не с WiX. Хотя .jpeg, похоже, поддерживается начиная с Windows 7, а PNG - начиная с Windows 8, будьте очень осторожны с используемым форматом. Ваш компромисс - это внешний вид вашего установщика.
Мой опыт показал, что единственный надежный способ убедиться, что полученный установщик правильно отображает ваши изображения, - это использовать несжатый BMPs. Вот и все! Да, я знаю, что они увеличивают размер окончательного файла, но, эй, как и все остальное в Microsoft, они на много лет позади, и нет никакого способа обойти это.
Поэтому, если вы не хотите, чтобы программа установки отображала серые квадраты в Windows XP или Vista вместо графики, не используйте ничего, кроме необработанного формата .bmp.
Да, если вам нужно установить только на Windows 8 или новее. От Управление растровым изображением:
Windows 8 and Windows Server 2012: The image file can be in any standard format supported by the Windows Imaging Component (WIC), including TIFF, JPEG, PNG, GIF, BMP, and HDPhoto. The control does not support animation.
Я пробовал использовать сжатые с помощью RLE файлы .BMP, но для этого мне пришлось уменьшить глубину цвета до 256, и результаты (качество изображения) были далеки от удовлетворительных. Спасибо.