我正在openSuse下开发一个GTK#mono应用程序,但我有兴趣为所有三个平台(Windows 7,Snow Leopard和我可以testing的Linux发行版)进行部署。
在Linux上部署不成问题,因为GTK#带有单声道库,但对于Windows,我不想强制用户安装GTK#。 有没有办法在应用程序中embeddedGTK#,或者至less将安装与安装程序集成在一起?
您可以部署GTK#应用程序,而不用强制用户在Windows上以多种方式安装GTK#for .NET。
您可以将整个Mono运行时(19 MB开销)嵌入您的应用程序中。 那么就不会有任何依赖,你的用户甚至不需要安装.NET或MONO。 这是一个指南 (我觉得女妖使用这个)。
您可以将所有GTK#程序集复制到您的程序目录中。 但是不建议这样做,因为如果用户安装了另一个版本的Gtk运行库,则可能会遇到很多问题。 (是的GTK +也需要一个运行时间)。
您可以将GTK#安装程序与应用程序的Windows安装程序集成在一起。 (然后你的用户将能够安装两个只需一次点击,没有强迫)。 许多安装程序可以做到这一点。
您可以使用包管理系统 。
您可以使用“部署管理/依赖管理软件”,但由于所有好的东西都是合适的,所以这是很昂贵的。
虽然这些解决方法可以为您的用户节省麻烦,但从长远来看,我建议使用选项3
。 您的用户安装GTK#可能证明是值得的,因为其他解决方法最终可能给您的用户带来更多不便,而不是简单的额外安装。