我正在 openSuse 下开发一个 GTK# mono 应用程序,但我有兴趣将它部署到所有三个平台(Windows 7、Snow Leopard 和我可以测试的尽可能多的 Linux 发行版)。
在 Linux 上部署不是问题,因为 GTK# 带有单声道库,但对于 Windows,我不想强迫用户安装 GTK#。有没有办法在应用程序中嵌入 GTK#,或者至少将它的安装与我的程序安装集成在一起?
最佳答案
您可以通过多种方式部署 GTK# 应用程序,而无需强制用户在 Windows 上安装适用于 .NET 的 GTK#。
您可以将整个 Mono 运行时(19 MB 开销)嵌入到您的应用程序中。这样就不会有任何依赖项,您的用户甚至不需要安装 .NET 或 MONO。 Here's a Guide (我认为 Banshee 使用这个)。
您可以将所有 GTK# 程序集复制到您的程序目录中。但是不推荐这样做,因为如果用户安装了另一个版本的 Gtk 运行时,您可能会遇到很多问题。 (是的,GTK+ 也需要运行时)。
您可以将 GTK# 安装程序与应用程序的 Windows 安装程序集成。 (然后您的用户将能够通过单击来安装两者,无需强制)。许多安装程序都可以做到这一点。
您可以使用 Package Management System .
您可以使用部署管理/依赖管理软件,但这很昂贵,因为所有好的软件都是专有的。
尽管这些变通办法可以为您的用户省去麻烦,但从长远来看,我推荐选项 3
。让您的用户安装 GTK# 可能被证明是值得的,因为与简单的额外安装相比,其他解决方法最终可能会给您的用户带来更多不便。
关于c# - 在不安装 GTK 的情况下将 GTK Sharp 应用程序部署到 Windows#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5816895/