Почему мои изображения MSI выглядят поврежденными при использовании WiX?

Я настраиваю собственный баннер и диалоговое изображение для моего WiX сгенерированного MSI.

<WixVariable Id="WixUIBannerBmp" Value="./build/msi/InstallerBanner.jpg" />
<WixVariable Id="WixUIDialogBmp" Value="./build/msi/InstallerDialog.jpg" />

По какой-то причине изображение становится поврежденным при встраивании в MSI. Я добавил два изображения к моему вопросу для легкого сравнения. Я пробовал BMP и JPEG с целым рядом типов сжатия - и все они выглядят точно так же. Я могу проверить, что я использую точно правильные размеры изображения (от 500 до 63 пикселей).

Здесь исходное изображение: Исходное изображение http://img193.imageshack.us/img193/7016/installerbanner.jpg

И вот как это выглядит в MSI: Используемое изображение - 1 http://img26.imageshack.us/img26/2996/bannerinuse.jpg

Обновление:

Спасибо за ваши ответы, я получил неправильные размеры из учебника, который на самом деле очень устарел и (по-видимому) очень неточен. Тем не менее, это хороший ресурс взлома. Я буду придерживаться руководства в будущем!

Ответ 1

Ваше изображение слишком велико по размеру. Banner Изображения должны быть 493 × 58, а ваше изображение 500 × 63, что приведет к его изменению.

См. Настройка встроенных наборов диалогов WixUI

Кстати: приятно видеть, что Synergy2 наконец-то получает обновление!

Ответ 2

Верно. Он покрыт wix.chm.

Это неправильные измерения. Из соответствующего раздела документации по документации wix:

Замена растровых изображений по умолчанию

Библиотека диалога WixUI включает растровые изображения по умолчанию для фона диалоги приветствия и завершения и верхний баннер других диалогов. Вы можете заменить эти растровые изображения на ваш собственный брендинг продукта цели. Чтобы заменить растровые изображения по умолчанию, укажите значения переменной WiX с помощью имена файлов ваших растровых изображений, так же, как при замене лицензии по умолчанию текст.

Имя переменной/Описание/Размеры:

  • WixUIBannerBmp/Top banner/493 × 58
  • WixUIDialogBmp/фоновое растровое изображение, используемое в диалогах приветствия и завершения /493 × 312
  • Значок WixUIExclamationIco/Exclamation на WaitForCostingDlg/32 × 32
  • Значок WixUIInfoIco/информации в диалоговом окне отмены и ошибок /32 × 32
  • Символ WixUINewIco/Button на /BrowseDlg 16 × 16
  • Символ WixUIUpIco/Button на BrowseDlg/16 × 16

Ответ 3

Использование WiX ver. 3.7.1224.0 (Dec'12), я должен создать изображение 616 × 390, чтобы заполнить диалог и избежать растяжения. Четкая зона слева от текста диалогового окна имеет ширину 234 пикселя.

Баннер по-прежнему 493 × 58.

Ответ 4

Я обнаружил, что для настройки WixUIDialogBmp для WiX 3.5 размеры должны быть 493x312 пикселей. Итак, чтобы баннер отображался только в левом 164 пикселях диалогового окна, заполните правильные 329 пикселей белыми пикселями. Затем он должен отображаться правильно.