У меня проблема с размером установочного EXE-файла, созданного Inno Setup - PullRequest
1 голос
/ 19 июля 2011

У меня есть приложение, которое выпускается в двух вариантах по причинам, которые здесь не актуальны.Они отличаются очень небольшими отличиями, в основном в «значках», нечетной строке и т. Д.

Каждая из двух сборок состоит из:

  • исполняемого файла приложения
  • файл справки CHM приложения
  • отдельный файл справки CHM меньшего размера для установщика
  • PDF-версия справки приложения
  • a "readme.txt"
  • пример командного файла

Как и следовало ожидать, размеры файлов в каждой из двух сборок практически идентичны.Общий размер вышеупомянутых файлов составляет около 13 МБ, но разница в размерах файлов между этими двумя вариантами составляет всего 1900 байт или около того.

EXE-файлы установщика, созданные InnoSetup, отличаются по размеру на 42,6 КБ!

Что может вызвать это?У меня есть ноющий страх, что что-то было «упущено» из одной из установок, хотя они, кажется, проверяют все в порядке.Поскольку IS не предоставляет подробной информации о том, как он собирает пакет установки, у меня нет возможности отследить эту аномалию.

Есть идеи, кто-нибудь?

Ответы [ 2 ]

5 голосов
/ 19 июля 2011

Это, вероятно, потому что InnoSetup сжимает файлы. Небольшие различия в файлах могут привести к довольно большим различиям в том, как они сжимаются.

Попробуйте сжать две версии и сравнить размеры zip-файлов - держу пари, они отличаются более чем на 1900 байт.

Другой вариант - использовать http://innounp.sourceforge.net/ для распаковки установщиков и сравнения распакованных файлов.

2 голосов
/ 19 июля 2011

@ RichieHindle выяснил причину различий.Вот подробные сведения о Zip-архивах, созданных из файлов, которые были упакованы в устанавливаемую версию.

Аромат 1 архивированных файлов установщиков выглядел так:

enter image description here

И Flavor 2:

enter image description here

, поэтому EXE-файл приложения (первый файл в архиве) имел идентичные размеры, но создавал сжатые файлы, отличающиеся по размеру на 38 КБ!

...