我正在C#上创build一个项目。 从项目生成的'exe'文件不能在没有安装.Net的机器上执行。 这个错误是popup:
要运行此应用程序,首先必须安装以下.NET.Framework版本之一:V4.0.30319
我不想让一个安装文件在PC上安装相关文件(.Net FW等)。
作为项目的要求,我想做一个“exe”,运行在每台Windows PC上, 而不需要安装软件或依赖软件 – > .Net FW。 只要点击和S / W EXE应执行。
是否有可能使这样的机器独立的“EXE”的Windows从.NET?
这不是完全可能的(有一些工具可以让你捆绑依赖,但我不会推荐使用它们)。
最好的方法是使用尽可能古老的框架,例如.NET Framework 3.0。 这样你就可以使用已经预装在几乎所有正在使用的系统上的框架版本。 换句话说,您可以确保您的程序在尽可能多的系统上运行。 只要提供一个链接到运行时,以防有人仍然想念它。
还要注意的是,与.NET Framework的前几次迭代发生的情况相比,这样做要好得多:那些可执行文件只会发生一个复杂的错误消息,而不会告诉用户它只是缺少运行时。 它随着时间的推移而改善了很多
另外,作为一种选择:你有没有想过使用ClickOnce部署? 这将允许您为用户提供一个简单的,最小的安装程序,他们也不会真正看到。 它只会下载并安装仍然缺失的依赖关系。 此外,这是VisualStudio的任何版本,甚至Express的内置。
这个错误是弹出来的
这不是一个错误。 只是一个友好的提醒用户,您的程序需要.NET 4在程序运行之前可用。 他会点击“是的,请!” 一切都自动解决。
您可以创建一个安装程序来避免该消息。 但是,鉴于你不想这样做,而且已经为你照顾,所以没有什么意义。
更多关于这个所有的样子,以及为什么它在这个答案中以这种方式工作