我使用C#编写了一个简单的应用程序。
现在我该如何制作它,以便它可以在所有系统上运行。 如果PC没有安装.NET框架 - 它应该只使用程序所需的最低要求来安装它。 安装.NET框架 - 与许多程序相比规模太大,只需几千字节。也只有在需要时才能保持沉默。 基本上,应用程序应该很轻,并且能够在所有Windows系统中运行。 对获得Linux用户不感兴趣。
我应该使用Mono Project吗? 否则,有一种方法可以选择预先安装裸小的.NET框架。
请告知。
谢谢
答案 0 :(得分:2)
看看mkbundle。它将创建一个独立的可执行文件,没有其他依赖项。特别是它既不需要安装Mono运行时也不需要安装.NET来执行。
大小可能仍然是一个问题(它可能是几兆字节,甚至是压缩的),因此还有另一种工具可以从程序集中删除不需要的所有内容:monolinker。
请注意,即使执行了所有操作,该大小也可能无法达到千字节范围。
答案 1 :(得分:1)
您可以通过大量工作和Mono框架的帮助来完成此任务。有关详细信息,请参阅Embedding Mono。
考虑到这一点,使用boostrapper来安装.NET Client Framework的版本要容易得多。但是你将失去静默安装或处于“千字节”足迹的能力。
答案 2 :(得分:0)
不幸的是,您无法在未安装.NET框架的计算机上运行.NET程序,并且可以使程序的安装程序自动下载框架,但不能在.NET中下载。
答案 3 :(得分:0)
要运行.net应用程序,您需要安装.net框架,该框架应该是完整版本或有限的客户端配置文件版本。
最简单的方法是从VS创建一个安装项目,并且需要您想要的.net版本......安装程序应该能够从Internet安装.net框架,因此您不需要随应用程序一起发送它,你可以从安装程序那里做。
单声道不会有所不同,因为它仍然需要安装在系统上。然而Mono有完全的AOT支持,但我不知道这对你有没有帮助......无论如何它仍然是一个巨大的矫枉过正。
如果您的应用程序很小并且在没有任何依赖关系的任何窗口上运行,则应该使用c / c ++或vb6,其运行时随大多数Windows版本一起提供。