2008-10-02 40 views
6

在Windows上創建安裝程序有許多工具(InstallShield,InnoSetup,NSIS,僅舉幾例)。我見過的所有工具都屬於這些類別中的一個或兩個用於在Windows上創建安裝程序的API

  • 點擊。用於創建安裝程序的Nice GUI,但不能手動編輯安裝程序定義/項目文件。
  • 文本文件:否(官方)GUI。安裝程序根據手動編輯的文本文件中的定義進行編譯。

我正在構建的安裝程序都是使用DSL(表示爲YAML文件)定義的,因此使用GUI不存在問題,創建文本文件雖然可行,但是很麻煩。

我真正想要的是一個公開一個(完整)API的工具,通過它我可以控制安裝程序的創建。那裏有沒有這樣的工具?

編輯:我很想聽聽有關基於非MSI的工具。 MSI不是必需品(相反......)

回答

6

Wix 3.0 beta爲此目的包含.NET支持。我不知道它有多好,但它包含文檔。這是一個操縱安裝創建過程的類型框架和所有的優點,所以如果你不想,你甚至不需要寫一行WiX XML。

1

WiX是一個很好的工具,但爲了使事情發生,你將不得不做很多直接編碼。幸運的是,文檔非常好,並且有幾個GUI工具,如SourceForge上的WixEdit以幫助完成此過程。

+0

WiX 3.0有一個編程框架,您不需要編寫wix文件。一探究竟。 – 2008-10-02 22:02:08

0

那麼,有Windows Installer API,你可以用它來直接創建MSI文件,但是我認爲你最好使用WiX。

「直接編碼」將會比直接處理Windows Installer API要少得多,我猜這可能是您的需求太「低級別」。根據你想要做什麼,你可以使用WiX生成一個MSI,然後使用API​​調整。

生成XML有什麼問題?這實際上將是您最簡單的選擇......您不需要手動編輯它,只需編寫自己的代碼即可從DSL文件和一些模板中生成所需的XML。

+0

生成XML是可以接受的 - 我可以在頂部添加自己的功能層。生成一個文本文件(更像是一種編程語言)是不太可以接受的,因爲它更自由,我必須處理引用等。 – JesperE 2008-10-03 09:40:38

相關問題