2013-01-10 46 views
2

什麼是分發Windows應用程序的最佳方式:如何分發Windows應用程序?

  • 我應該使用哪種格式來分發應用程序,一個exe文件 或zip文件?
  • 我應該在應用程序上簽名嗎?

我還應該考慮到其他點?

我將使用innosetup爲應用程序創建安裝程序。該應用程序使用node-webkit進行製作。

回答

2

(我不是Windows用戶,但是)MSI包比都好 exe文件和zip文件。選擇交互式或無人值守[un]安裝的自由度以及處理依賴性和升級的能力足以使其成爲最佳選擇。 WiX讓MSI的創作變得更輕鬆 - 試試看。

+0

MSI軟件包只能安裝合併模塊中的依賴關係;使用諸如Burn之類的東西創建的.exe引導程序也可以安裝其他exe和msi程序包。它也處理無提示安裝和升級。 – BCran

1

只要應用部署 - 它沒有什麼功能上的區別,你選擇在分發數據格式

我必從,而不是在這裏一個技術性用戶的角度說話。請包括一個CLEARLY LABELED安裝程序(MSI是最好的;但如果它是.exe或.bat或其他,將其標記爲「安裝程序」或「點擊安裝」或類似的內容)和一個有用的自述文件,如果你做選擇分佈在.zip中。

+1

更多取決於應用程序的有用程度。也許.zip看起來有些舊式,但對於高級用戶(比如某些ssh客戶端)來說,一個好的應用程序肯定可以這樣分配。有些人可能更喜歡控制安裝程序的操作。太多的安裝程序會添加垃圾郵件快捷方式,無人要求的無用附加功能,垃圾郵件在註冊表中等。 – h22

+0

同意 - 這是.zip的另一點。更多......「高級」用戶喜歡看到正在發生的事情,並更直接地控制文件和安裝程序。 – PinkElephantsOnParade

+0

安裝程序會在程序文件目錄中放置一個簡單的exe文件和一些必需的dll文件...這樣的控制並不是必需的,我相信...你應該能夠選擇放置它的位置,如果你想要一個桌面圖標或者不......所以我認爲msi可能會過度殺傷。另外一個exe很容易使:)我看到與exe文件的問題是,如果你從互聯網上下載它們可能會被阻止?這就是爲什麼我想在一個zip文件中添加exe文件... –

0

這一切都取決於exe的含義。如果它只是一個簡單的.NET可執行文件,並且它是自包含的,那麼您所需要的只是exe中的一個zip文件(等待其包含< .NET 2.0)。 Windows的每一個較新的後續版本都將.NET運行時內置到操作系統中,一直增加到4.5或5.0?

所以,如果您有最新的Windows,它有它的.NET 4.5庫,所有你需要的是本質上的可執行文件。但是,如果它是較舊的操作系統,則可能需要捆綁或鏈接所需的運行時。某些應用程序需要安裝第三方組件以及其他DLL。在這種情況下,您最好的選擇是使用第三方工具,如Install Shield或Wise或Orca,您可以在其中自定義安裝並安裝第三方組件,如SQL Server Personal,Oracle Personal或mySQL Database或Crystal報表組件。

此外,如果NTFS權限和網絡權限是必需的或註冊表值是必需的,你需要用智慧,InstallShield會等腳本它,需要提升權限。微軟還有一些內置的Deploy Once(?)工具,允許通過網絡或網絡路徑或可執行文件完成此工作。

這一切都取決於我見過甚至需要防火牆例外,等等。如果你是在企業環境中,並有可以部署使用域應用的exe文件,這多少影響你的系統等的複雜性SCCM/SMS或UniCenter。就像我說的,這一切都取決於複雜性和範圍。

如果它是一個簡單的.NET 2.0的應用程序,那麼所有你需要的是一個zip exe文件。最好的方法是將exe複製到幾個不同的系統並測試它。

MSI本質上能夠從shell或run/explorer執行。你也可以將你的安裝編譯成一個自包含的可執行文件。

底線,這一切都取決於你的應用程序:)