我正在openSuse下开发GTK#mono应用程序,但我有兴趣将它部署到所有三个平台(Windows 7,Snow Leopard以及我可以测试的许多Linux发行版)。
在Linux上部署不是问题,因为GTK#附带单声道库,但对于Windows,我不想强迫用户安装GTK#。有没有办法在应用程序中嵌入GTK#,或者至少将其安装与我的程序安装集成?
答案 0 :(得分:24)
您可以部署GTK#应用程序,而不必强迫用户在Windows上以多种方式安装GTK#for .NET。
您可以将整个Mono运行时(19 MB开销)嵌入到您的应用程序中。然后就不会有任何依赖项,您的用户甚至不需要安装.NET或MONO。 Here's a Guide(我认为Banshee使用此功能)。
您可以将所有GTK#程序集复制到程序目录中。但是不建议这样做,因为如果用户安装了另一个版本的Gtk运行时,可能会遇到很多问题。 (是的GTK +也需要运行时)。
您可以将GTK#安装程序与应用程序的Windows Installer集成。 (然后您的用户只需单击一下即可安装,无需强制)。许多安装程序都可以执行此操作。
您可以使用部署管理/依赖管理软件,但这很昂贵,因为所有好的都是适当的。
虽然这些变通办法可以为您的用户带来麻烦,但从长远来看,我建议选择3
。让您的用户安装GTK#可能是值得的,因为除了简单的额外安装之外,其他解决方法可能最终给您的用户带来更多不便。