2011-04-28 53 views
24

我正在openSuse下開發一個GTK#mono應用程序,但我有興趣爲所有三個平臺部署它(Windows 7,Snow Leopard和我可以測試的許多Linux發行版上)。在沒有安裝GTK的情況下將GTK Sharp應用程序部署到Windows#

在Linux上部署並不是一個問題,因爲GTK#帶有單聲道庫,但對於Windows我不想強制用戶安裝GTK#。有沒有辦法將GTK#嵌入到應用程序中,或者至少將其安裝與安裝程序集成在一起?

+1

你需要重新分配gtk +和gtk-sharp與你的安裝程序,gimp做同樣的事情(因爲他們寫了gtk,這不是一個驚喜) – IanNorton 2011-06-25 07:40:07

+1

我認爲這將是一個解決方案。我應該怎麼做呢? – Kiril 2011-06-26 16:31:10

+0

是否有特定的原因讓你的用戶不能安裝gtk#庫?任何依賴共享庫的應用程序都是一般的做法。 – 2011-09-14 23:12:50

回答

22

您可以部署GTK#應用程序,而不用強制用戶在Windows上以多種方式安裝GTK#for .NET。

  1. 您可以嵌入整個單運行時(19 MB的開銷)到您的應用程序。那麼不會有任何依賴關係,您的用戶甚至不需要安裝.NET或MONO。 Here's a Guide(我覺得女妖使用這個)。

  2. 您可以將所有GTK#程序集複製到程序目錄中。但不推薦這麼做,因爲如果用戶安裝了另一個版本的Gtk運行時,可能會遇到很多問題。 (是的GTK +也需要運行時)。

  3. 您可以將GTK#安裝程序與您的應用程序的Windows安裝程序集成。 (然後您的用戶將能夠通過單擊進行安裝,無需強制)。許多安裝程序可以做到這一點。您可以使用Package Management System

  4. 您可以使用部署管理/依賴管理軟件,但由於所有好的管理軟件都是合適的,因此這樣做很昂貴。

雖然這些解決方法可以爲您的用戶節省麻煩,但從長遠來看,我推薦選項3。讓您的用戶安裝GTK#可能證明是值得的,因爲其他解決方法最終可能給您的用戶帶來更多不便,而不是簡單的額外安裝。

相關問題