2011-07-18 17 views
1

我有一個應用程序在兩種口味下發布,原因與此處不相關。他們在非常小的方面有所不同,主要表現在「徽章」,奇串等我遇到了由Inno Setup生成的安裝EXE大小問題

兩個版本各包括:

  • 應用程序的可執行
  • 應用幫助CHM文件
  • 一對安裝單獨的較小CHM幫助文件
  • 的應用程序幫助
  • 一個的「readme.txt」
  • 一個示例b的PDF版本atch文件

正如我所料,兩個版本中每個版本的文件大小几乎相同。上述文件的總大小是13 Mb左右,但兩種文件之間的文件大小差別僅爲1900字節左右。

InnoSetup生成的安裝程序EXE在大小上差別達42.6k!

這會導致什麼?我有一種嘮叨的擔心,即某些可安裝設備的某些東西「被遺漏」,儘管它們似乎檢查出了OK。因爲IS沒有提供關於它如何構建安裝包的詳細信息,所以我無法跟蹤這種異常情況。

任何想法,任何人?

回答

5

這可能是因爲InnoSetup壓縮文件。文件的小差異會導致它們最終被壓縮的方式有很大差異。

試着壓縮你的兩個版本,並比較zip文件的大小 - 我敢打賭,它們相差超過1900字節。

另一種選擇是使用http://innounp.sourceforge.net/解包安裝程序,並比較解壓後的文件。

+0

謝謝@RichieHindle。 InnoUnp看起來像它可能是答案,但當我在我的安裝程序上運行它時,我得到了這個: '簽名檢測到: Inno Setup Setup Data(5.3.10) 這不是直接支持,但我會嘗試解壓它作爲版本5105 ;檢測到的版本:5310 解包失敗。這個版本不支持.' 所以我想也許它一直沒有工作。 – rossmcm

+0

我按照你的建議做了,並且壓縮了組件文件,是的,當組件文件的大小差異小於2k時,ZIP文件的大小也相差36kb。我將發佈Zip文件差異的細節。 – rossmcm

+0

+ +1對於Innounp的提及,我之前沒有聽說過。 –

2

@RichieHindle擊中了差異的原因。以下是從打包到可安裝文件中的文件生成的Zip存檔的詳細信息。安裝程序文件壓縮了的

香料1是這樣的:

enter image description here

和風味2:

enter image description here

所以應用程序EXE(在歸檔中的第一個文件)有相同的大小,但生成的壓縮文件大小不同38k!